
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルのvbaにて thisworkbookに記載のマクロを他のブックにマクロにて自動コピー出来る
Excel(エクセル)
-
【ExcelVBA】sheet作成時にマクロを埋め込みたい
その他(Microsoft Office)
-
VBA This Workbookモジュールを別ファイルにコピーする方法
Visual Basic(VBA)
-
-
4
マクロをマクロを使ってコピーしたい
その他(Microsoft Office)
-
5
別ブックをダイアログボックスで指定してそこにあるシートをコピーしたい
Excel(エクセル)
-
6
標準モジュール、フォームを別のブックにコピーするには?
Excel(エクセル)
-
7
エクセルのVBAで新しくブックを開いた上でさらに…
Excel(エクセル)
-
8
Offsetで可視セルだけを移動したい。
Excel(エクセル)
-
9
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
10
エクセル ボタンに設定したマクロごとボタンをコピー
Excel(エクセル)
-
11
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
12
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
13
VBA 別ブックからコピペしたいのですが、軽くしたいです
Visual Basic(VBA)
-
14
Excel VBAで、ユーザーフォームの値を、モジュールで使用したい。
Visual Basic(VBA)
-
15
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
16
ユーザーフォームで動的(Me.Controls.Add)に作成したコントロールの削除
Visual Basic(VBA)
-
17
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
18
VBA シートをコピー後、ボタンにマクロ登録
Excel(エクセル)
-
19
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
20
VBA CodeModuleでinsertした時の変数値
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル関数>参照ファイル名...
-
VBAで保存しないで閉じると空の...
-
マクロの保存先、開いてるすべ...
-
エクセルVBAで作成した別ブック...
-
EXcelのマクロで相対パスでファ...
-
【Excel】マクロの保存先について
-
【マクロ】元データと同じお客...
-
エクセルのvbaにて thisworkboo...
-
複数のExcelファイルの印刷設定...
-
名前の変わるブックをアクティ...
-
エクセルを開いて文字を打つ際...
-
エクセル;相対パスを絶対パスへ...
-
EXCELのボタンによるマクロの登...
-
エクセルVBA 個人用マクロブッ...
-
エクセルで未保存に対するメッ...
-
1つのEXCELファイルをインター...
-
マクロ 自動でパスワード及び指...
-
個人用マクロブックが消えました
-
【Excel】特定セルの内容をテキ...
-
ExecuteExcel4Macroを使って他...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで保存しないで閉じると空の...
-
【マクロ】元データと同じお客...
-
【Excel VBA】マクロでExcel自...
-
エクセル関数>参照ファイル名...
-
マクロの保存先、開いてるすべ...
-
エクセルのvbaにて thisworkboo...
-
エクセル;相対パスを絶対パスへ...
-
【Excel】マクロの保存先について
-
EXcelのマクロで相対パスでファ...
-
EXCELのボタンによるマクロの登...
-
エクセルで未保存に対するメッ...
-
EXCELマクロで、開いてはいるが...
-
excelで直前に参照していたブッ...
-
EXCELブックが勝手に開いて困っ...
-
複数のExcelファイルの印刷設定...
-
エクセルで使用期限付きのブッ...
-
エクセルを開いて文字を打つ際...
-
[フィルターオプションの設定]...
-
名前の変わるブックをアクティ...
-
【Excel】特定セルの内容をテキ...
おすすめ情報