|
▼Cuore=Tane さん:
おはようございます。
無理やりやるとすれば、こんな感じでしょうか?
Sub test()
'変数の指定
Dim a As Long
Dim b As String
Dim c As Integer
Dim s As Worksheet
Dim Cnt As Integer
'ダイアログボックスの表示
If MsgBox("新規ヘルパーの登録をしますか?", vbYesNo + vbInformation, "ヘルパー新規登録") = vbYes Then
'インプットボックスを表示
b = InputBox("登録するヘルパーの氏名を入力してください" & Chr(13) & _
"姓と名の間にスペースを入力してください。", "ヘルパー登録", "例:あいう えお")
If b <> "" Then 'ボックスに入力されている場合
a = Worksheets.Count '現在のシート数を数える
Sheets("日程表 原本").Copy After:=Sheets(a) '原本をコピーし、末尾に移動する
a = a + 1 '新規シート選択のためaの値に1加算する
Sheets(a).Select
Range("F3") = b '新規シートのセルF3にbの値を代入する
c = InStr(1, b, " ")
Cnt = 1
For Each s In Worksheets
If Mid(s.Name, 5, c - 1) = Left(b, c - 1) Then Cnt = Cnt + 1
Next s
If Cnt = 1 Then
Sheets(a).Name = "日程表 " & Left(b, c - 1)
Sheets("TOP").Select
Else
Sheets(a).Name = "日程表 " & Left(b, c - 1) & "(" & Cnt & ")"
End If
Exit Sub
Else
MsgBox "入力されておりません", vbExclamation, "エラーメッセージ"
Sheets("TOP").Select
Exit Sub
End If
End If
End Sub
|
|