
以下のマクロを画像に登録してボタンとしています
マクロ内容は以下です
・別ファイルに、モジュール(マクロ)を登録
・別ファイルに画像を作成
・作成した画像にマクロを登録
これを2回目実行すると、画像の上にさらに画像ができ
また、マクロは登録されません
1回登録したら、次から実行できないようにできますでしょうか???
別ファイル(1ファイル)に1回までしか実行できないようにしたいです
アドバイス、コード分かる方は教えて下さい
なお、別ファイルは1日ごとに変わります
なので、次の日にはまた、初めて
新しく上記マクロを実行し、画像にマクロを登録します
【コード】
Sub macro_import()
'鏡ブックへマクロコードをimport
Dim filepath1 As String
Dim wb1 As Workbook
Dim ws1 As Worksheet
filepath1 = ThisWorkbook.Worksheets("Sheet1").Cells(7, 1)
Set wb1 = Workbooks.Open(filepath1)
Set ws1 = wb1.Worksheets("Sheet1")
Const filepath As String = "C:\Users\2020\OneDrive\マクロ\マクロファイル\"
With wb1.VBProject.VBComponents
.Import filepath & "delete.bas"
End With
Call sample
End Sub
Sub sample()
Dim filepath1 As String
Dim wb1 As Workbook
Dim ws1 As Worksheet
filepath1 = ThisWorkbook.Worksheets("Sheet1").Cells(141, 1)
Set wb1 = Workbooks.Open(filepath1)
Set ws1 = wb1.Worksheets("Sheet1")
With ws1.Shapes.AddShape(msoShapeRectangle, 120, 60, 120, 60)
.Fill.ForeColor.RGB = RGB(220, 220, 220)
.Line.ForeColor.RGB = RGB(220, 220, 220)
.Name = "あいう"
With .TextFrame.Characters
.Text = "不要行削除"
.Font.Size = 16
End With
.Top = Range("f1").Top
.Left = Range("f1").Left
End With
ws1.Shapes("あいう").OnAction = "delete1" 'プローシージャ名を記述
End Sub
No.1ベストアンサー
- 回答日時:
call sample
でサンプルを呼び出す部分を
以下のようにおきかえてみては。
' "あいう" シェイプの存在確認
Dim shp As Shape
Dim exists As Boolean
exists = False
For Each shp In ws1.Shapes
If shp.Name = "あいう" Then
exists = True
Exit For
End If
Next shp
' 存在しない場合のみ sample を実行
If Not exists Then
Call sample
End If
うまくできました。ありがとうございます
マクロ事態は、名前を変えて、どんどん、インポートされて
しまいますが
図形と図形にマクロを登録は、進みません
ので、結果、1回しかい、図形が作成されないので
不具合なしです
ご指導、ありがとうございます
.Import filepath & "delete.bas"
⇒1delete.bas
⇒2delete.bas
No.3
- 回答日時:
成功したらBookのBuiltinDocumentPropertiesに書き込めば?
適当なBookを開いて(XLSXでもXLSMでも可)
イミディエイトウィンドウに
thisworkbook.BuiltinDocumentProperties("comments")="二度漬け禁止"
と入力しEnter。
ファイルを上書き保存して[ファイル]のプロパティを見ると
(プロパティをすべて表示)でコメントに「二度漬け禁止」となっているハズ。
変更も参照も出来るのでどうでしょね?
No.2
- 回答日時:
先の回答の一部を以下に置き換えて、
If exists Then
Exit Sub
End If
Constより前に入れるといいかも。
“あいう”がなければ、マクロが終了します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【マクロ】1つのマクロの中に、ブック指定とシート指定が混在しても良いのですか? 2 2024/05/16 07:13
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2024/06/18 09:20
- Excel(エクセル) 【マクロ】セルに関数を入れる場合、列を追加した後に実行すると【文字列】になってしまう 1 2024/06/09 16:41
- Excel(エクセル) 【マクロ】関数をセルに入力するも、スピルしない件 1 2024/06/09 22:15
- Excel(エクセル) 【マクロ】その時、その時で変わる範囲を、フォルダの違う別ブックへ転記する為には ※参考画像あり 3 2024/05/11 10:33
- Excel(エクセル) 【マクロ】アクティブセルの行のデータをクリアするマクロについて 1 2024/06/12 06:45
- Visual Basic(VBA) Excelのマクロについて教えてください。 2 2024/06/14 16:38
- Excel(エクセル) 【マクロ】毎回、ファイル名が変わるファイルへの 文字列の転記 2 2024/05/02 14:17
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/07/01 15:23
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2024/05/09 09:12
このQ&Aを見た人はこんなQ&Aも見ています
-
「それ、メッセージ花火でわざわざ伝えること?」
「それ、メッセージ花火でわざわざ伝えること?」というメッセージを教えて下さい
-
許せない心理テスト
皆さんがこれまで受けた中で許せない心理テストがあれば教えていただきたいです。
-
最速怪談選手権
できるだけ短い文章で怖がらせてください。
-
チョコミントアイス
得意ですか?不得意ですか?できれば理由も教えてください。
-
準・究極の選択
「年収1000万円で一生カレーライス」か「年収180万円で毎日何でも食べ放題」
-
【マクロ】関数の入力にてエラーがでます
Excel(エクセル)
-
【マクロ】コードを少しでも、減らする為には
Excel(エクセル)
-
ユーザーマクロ作成
Excel(エクセル)
-
-
4
役所でもらった書類をエクセル化するには? 役所に申請する用紙があります。A4で表になっていて枠内に文
その他(Microsoft Office)
-
5
Excelでの文字入力について
Excel(エクセル)
-
6
勤務外時間を出す表が作りたい
Excel(エクセル)
-
7
Excelの計算が合いません。 諸事情で会計の簡素な購入・販売諸元表を作っているのですが、一つの項目
Excel(エクセル)
-
8
8:40までの出勤は全て8:30にする関数を教えて下さい!!
Excel(エクセル)
-
9
エクセル数式に問題があります
Excel(エクセル)
-
10
Excel いい方法教えてください。
Excel(エクセル)
-
11
別のシートの指定列の最終行を返す関数の式を教えて下さい。
Excel(エクセル)
-
12
質問58753 このコードでうまく動作しません。どうしたら良いですか Private Sub Wor
Visual Basic(VBA)
-
13
Excelで〇のついたものを抽出したい
その他(Microsoft Office)
-
14
Excelに貼ったXのURLのリンクをクリックするとエラーメッセージが表示される原因と対処について
Excel(エクセル)
-
15
エクセルで、一部のセルだけ固定し そのセルがある行・列で挿入をしても、その固定したセルだけは動かない
Excel(エクセル)
-
16
Excelについて教えてください。
Excel(エクセル)
-
17
VBA_日時のソート
Excel(エクセル)
-
18
excelVBAについて。
Excel(エクセル)
-
19
if関数。半角文字や全角文字で分ける事ができますか?
Excel(エクセル)
-
20
セル内が空白設定なのに#N/Aと出てくるのを回避する方法を教えてください。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・昔のあなたへのアドバイス
- ・字面がカッコいい英単語
- ・許せない心理テスト
- ・歩いた自慢大会
- ・「I love you」 をかっこよく翻訳してみてください
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・はじめての旅行はどこに行きましたか?
- ・準・究極の選択
- ・この人頭いいなと思ったエピソード
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・【お題】甲子園での思い出の残し方
- ・【お題】動物のキャッチフレーズ
- ・人生で一番思い出に残ってる靴
- ・これ何て呼びますか Part2
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・あなたが好きな本屋さんを教えてください
- ・かっこよく答えてください!!
- ・一回も披露したことのない豆知識
- ・ショボ短歌会
- ・いちばん失敗した人決定戦
- ・性格悪い人が優勝
- ・最速怪談選手権
- ・限定しりとり
- ・性格いい人が優勝
- ・これ何て呼びますか
- ・チョコミントアイス
- ・単二電池
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・泣きながら食べたご飯の思い出
- ・一番好きなみそ汁の具材は?
- ・人生で一番お金がなかったとき
- ・カラオケの鉄板ソング
- ・自分用のお土産
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルについてどう関数を使...
-
マクロ・VBAで、当該ファイルの...
-
エクセルで二つのブックの違い...
-
エクセルでカウントする
-
エクセルのファイルのコピーを...
-
【マクロ、画像あり】A表かB表...
-
【マクロ】コードを少しでも、...
-
【マクロ 画像あり】Exact関数...
-
Excelファイルを開くと私だけVA...
-
空白処理を空白に
-
Excel 日付の表示が直せません...
-
エクセルの循環参照を削除したい!
-
スプレッドシート(Excelでも良...
-
列挿入をVBAで
-
エクセルでラベルシールを印刷...
-
名前の間のスペースをそろえる...
-
空白のはずがSUBTOTAL関数でカ...
-
【マクロ 画像あり】セル範囲の...
-
エクセルの数式について教えて...
-
エクセルで教えてください。 例...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの設定、下へスクロー...
-
別のシートの指定列の最終行を...
-
【マクロ】シート追加時に同じ...
-
Excelファイルを開くと私だけVA...
-
Excelの関数を教えて下さい。
-
マクロを実行すると、セル範囲...
-
エクセルの設定、特定の列以降...
-
Excelの条件付書式について教え...
-
Excelで作成した出欠表から日付...
-
Excelでの文字入力について
-
Excel 日付の表示が直せません...
-
Excel関数の解決方法
-
システムファイルについて
-
自動的に日付入力 応用
-
UNIQUE関数の代用
-
エクセル内に読み込んが画像の...
-
勤務外時間を出す表が作りたい
-
Excel 偶数月の15日(土日祝...
-
【マクロ】Call関数で呼び出し...
-
【マクロ】1回目の実行後、2...
おすすめ情報