- ベストアンサー
Excel VBAで新規BOOKを追加する方法
- ExcelのVBAを使ってユーザーフォーム上にテキストボックスとボタンを配置し、日付を入力した後にボタンを押すと同じフォルダ内に「日記06.xls」というファイルを作成する方法について教えてください。
- また、作成したファイル内には「1月」から「12月」と「全体」のシートが作成され、入力した日付に対応する月のシートがアクティブになるようにしたいです。
- DATE関数を使って年と月を取得し、上記の処理を行う方法についても教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 こんな感じです。 ボタンのClickイベントとして処理します。 Private Sub CommandButton1_Click() '保存ファイル名の作成 Dim saveFileNM As String saveFileNM = ActiveWorkbook.path & "\日記" & Format(CDate(Me.TextBox1.Text), "yy") & ".xls" '新規Bookの作成 Dim BK As Workbook Set BK = Application.Workbooks.Add(xlWBATWorksheet) Dim stCount As Integer stCount = BK.Sheets.Count '自動作成Sheetの数 Dim i As Integer For i = 1 To 13 If i > stCount Then BK.Sheets.Add after:=BK.Sheets(BK.Sheets.Count) End If If i <> 13 Then BK.Sheets(i).Name = Str(i) & "月" Else BK.Sheets(i).Name = "全体" End If Next BK.SaveAs saveFileNM 'Bookを保存(上書き確認あり) BK.Sheets(Month(Date)).Select '表示 Set BK = Nothing End Sub
お礼
ありがとうございます。いいマクロが出来上がりました。DATEの使い方がとても参考になり助かりました。ありがとうございます。