
VBAで別ファイルの作成は下記で出来ているのですが、出来上がったファイルにVBAを記述する方法がわかりません。
具体的には一番下のSub TEST()を新しいブックの標準モジュールに記述したいのと、sheet1に
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox "ChangeTEST"
End Sub
を入れたいです。
また
Private Sub Workbook_Open()
MsgBox "OpenTEST"
End Sub
も入れたいのです。
どうぞご教示ください。
Sub 複製()
Dim wb As Workbook, sc As Integer
sc = Application.SheetsInNewWorkbook
Application.SheetsInNewWorkbook = 1
Set wb = Workbooks.Add
Application.SheetsInNewWorkbook = sc
wb.Sheets("Sheet1").Select
ThisWorkbook.Sheets("Sheet1").Cells.Copy
wb.Sheets("Sheet1").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveSheet.Buttons.Add(123, 195, 68.25, 15).Select
Selection.OnAction = "TEST"
Selection.Characters.Text = "TEST"
ActiveWorkbook.Close
ThisWorkbook.Activate
Sheets("Sheet1").Select
End Sub
Sub TEST()
MsgBox "TEST!!"
End Sub
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
わたしも前前からやってみたいと思っていたので、ネットを検索して調べてみました。
こんな感じで出来るようです。
'マクロ挿入
With wb.VBProject.VBComponents.Item("ThisWorkbook").CodeModule
.InsertLines 1, "Private Sub Workbook_Open()"
.InsertLines 2, ""
.InsertLines 3, " Msgbox""ブックが開かれましたよ!"""
.InsertLines 4, ""
.InsertLines 5, "End Sub"
End With
With wb.VBProject.VBComponents.Item("Sheet1").CodeModule
.InsertLines 1, "Private Sub Worksheet_Change(ByVal Target As Range)"
.InsertLines 2, ""
.InsertLines 3, " MsgBox ""セルの値が変更されましたよ!"""
.InsertLines 4, ""
.InsertLines 5, "End Sub"
End With
wb.VBProject.VBComponents.Add (1) 'Module1挿入
With wb.VBProject.VBComponents.Item("Module1").CodeModule
.InsertLines 1, "Sub TEST()"
.InsertLines 2, ""
.InsertLines 3, " Msgbox""TESTしたよ!"""
.InsertLines 4, ""
.InsertLines 5, "End Sub"
End With
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Visual Basic(VBA) マクロを短くする 1 2023/01/15 00:11
- Excel(エクセル) エクセル VBAでシートのコピーを作りたい 1 2023/05/18 07:42
- Visual Basic(VBA) エクセルVBA(実行時エラー438)の対処法を教えてもらえないでしょうか 3 2023/04/22 13:43
- Visual Basic(VBA) VBAでファイルを開くプログラムがエラーです 2 2023/02/21 16:56
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルのvbaにて thisworkbookに記載のマクロを他のブックにマクロにて自動コピー出来る
Excel(エクセル)
-
【ExcelVBA】sheet作成時にマクロを埋め込みたい
その他(Microsoft Office)
-
VBA This Workbookモジュールを別ファイルにコピーする方法
Visual Basic(VBA)
-
-
4
マクロをマクロを使ってコピーしたい
その他(Microsoft Office)
-
5
UserForm1.Showでエラーになります。
工学
-
6
エクセルのVBAで新しくブックを開いた上でさらに…
Excel(エクセル)
-
7
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
8
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
9
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
10
【sendkeysメソッドが動かずに苦慮しております】
Visual Basic(VBA)
-
11
VBA シートをコピー後、ボタンにマクロ登録
Excel(エクセル)
-
12
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
13
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
14
VBAでの結合セルのコピー&ペースト
Excel(エクセル)
-
15
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
16
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
17
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
18
Offsetで可視セルだけを移動したい。
Excel(エクセル)
-
19
EXCELのVBAでシートコピーをしたとき元のマクロを削除するには?
Excel(エクセル)
-
20
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAで保存しないで閉じると空の...
-
【Excel VBA】マクロでExcel自...
-
エクセル関数>参照ファイル名...
-
マクロの保存先、開いてるすべ...
-
【Excel】マクロの保存先について
-
[フィルターオプションの設定]...
-
ファイル名変更後も、マクロを...
-
エクセルのvbaにて thisworkboo...
-
EXCELマクロで、開いてはいるが...
-
エクセルを開いて文字を打つ際...
-
エクセル;相対パスを絶対パスへ...
-
マクロ 自動でパスワード及び指...
-
EXCELブックが勝手に開いて困っ...
-
【Excel】特定セルの内容をテキ...
-
EXcelのマクロで相対パスでファ...
-
エクセルVBA 個人用マクロブッ...
-
複数のExcelファイルの印刷設定...
-
エクセルで未保存に対するメッ...
-
複数のExcelブックから特定シー...
-
excelで直前に参照していたブッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで保存しないで閉じると空の...
-
エクセル関数>参照ファイル名...
-
【Excel VBA】マクロでExcel自...
-
エクセルのvbaにて thisworkboo...
-
マクロの保存先、開いてるすべ...
-
エクセル;相対パスを絶対パスへ...
-
【Excel】マクロの保存先について
-
EXcelのマクロで相対パスでファ...
-
複数のExcelファイルの印刷設定...
-
excelで直前に参照していたブッ...
-
EXCELマクロで、開いてはいるが...
-
[フィルターオプションの設定]...
-
EXCELのボタンによるマクロの登...
-
EXCELブックが勝手に開いて困っ...
-
エクセルで使用期限付きのブッ...
-
エクセルを開いて文字を打つ際...
-
エクセルで未保存に対するメッ...
-
エクセルVBA 個人用マクロブッ...
-
【マクロ】マクロが保存されて...
-
エクセルで複数ファイルのセル...
おすすめ情報