VocExcel(単語帳) / VBA Tips
 
 [Key] エクセル / Excel / VBA /マクロ


<--- 戻る

シートを新しく作成

サンプルファイル







Private Sub CommandButton1_Click()




If ListBox1.ListIndex >= 0 Then

msg = MsgBox("選択シートの名前を変更します。", vbYesNo)

If msg = vbYes Then

Call chngSheetName

End If

Else

MsgBox "シート名を選択して下さい。"


End If



End Sub




Private Sub ListBox1_Click()


On Error Resume Next '選択したシート名へ移動

Worksheets(ListBox1.Text).Select
Cells(1, "A").Select




End Sub

Private Sub UserForm_Initialize()


Call uFInit


End Sub
Sub uFInit()



On Error Resume Next

ListBox1.Clear

For i = 1 To Worksheets.Count 'シートの数だけ繰り返す
ListBox1.AddItem Worksheets(i).Name '取得したシート名をリストボックスへ
Next


ListBox1.ListIndex = 0


End Sub


Private Sub chngSheetName()



On Error GoTo line

'シート名変更





If Trim(TextBox1.Text) <> "" Then

crrntIndex = ListBox1.ListIndex '選択中のインデックスを取得


Worksheets(ListBox1.Text).Name = TextBox1.Text 'シート名変更

Call uFInit

TextBox1.Text = ""


ListBox1.ListIndex = crrntIndex 'インデックスを移動する

Else

MsgBox "シート名を入力して下さい。"

End If






Exit Sub

line:

MsgBox "同じシート名がすでに存在します。シート名を変更してください。"





End Sub




--