ボタンをクリックしたときにデータを検証するためのマクロを含むテンプレートがあります。1枚のシートのみがあり、そのファイルにシートが追加されていないテンプレート(1枚のシートのみが含まれている必要があります)。ここで、マクロを有効にせずにファイルを開いた場合、画像を表示する必要があります。それ以外の場合は、マクロを有効にしてください。表示する必要はありません。
助けてくれてありがとう。
シートでマクロを有効にするようにユーザーに強制する方法は?
あなたの質問への答えは「あなたはできない」です
ただし、ここにケン・プルスによる代替案があります。これはあなたの目的にぴったりです。
トピック:ブックでマクロを有効にするようにユーザーに強制する
リンク:http ://www.vbaexpress.com/kb/getarticle.php?kb_id = 379
そのリンクからの引用
マクロを使用してマクロをオンにする方法はないため、ユーザーがマクロを有効にしていることを確認する手法が望まれます。この特定のメソッドは、ユーザーにマクロを有効にするように指示する「ウェルカム」シートを除くすべてのシートを非表示にし、ブックが保存されるたびに適用されます。ユーザーがマクロを有効にしてブックを開くと、シートはすべてマクロによって非表示になります。シートの非表示もExcelのVeryHiddenプロパティを使用して実行されます。つまり、Excelのメニューを使用してシートを非表示にすることはできません。ただし、これはこのブックにのみ影響するため、ユーザーは別のブックのマクロを使用してすべてのシートを再表示できることに注意してください。ただし、ユーザーがそれほど熟練している場合は、とにかくいつでもファイルにアクセスできる可能性があります。注:一部のイベントループの問題を防ぐために、このコードではExcelを上書きする必要があります。■組み込みの保存イベントであり、Excelの「ブックが変更されました。保存しますか」というプロンプトとアクションを複製する必要があります。このコードはすべてを処理します。ただし、ファイルを閉じるときに非常に小さな問題が発生します。ユーザーがアプリケーションを終了しようとすると、ブックは閉じられますが、Excelは閉じられません。もう一度終了すると、Excelが完全に閉じます。
ファローアップ
ワークブックを閉じる前に、次の手順を実行してください
そして、あなたが開くとき、上記の逆をしてください
重要。
シートに画像を配置したら、画像を右クリックして[画像のフォーマット]をクリックします。で、というオプションをFormat Picture Dialog
選択してオフにします。Don't move or size with cells
Print Object
ワークブックを閉じるときのコード-上記のリンクに示されているのと同じ概念を適用します
Dim shp As Shape
With Sheets("Sheet1")
.Rows(1).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
.Rows(1).RowHeight = 300
.Rows("2:" & .Rows.Count).EntireRow.Hidden = True
Set shp = .Shapes("Picture 1")
With shp
.Top = Sheets("Sheet1").Range("A1").Top
.Left = Sheets("Sheet1").Range("A1").Left
.LockAspectRatio = msoFalse
.Height = 100
.Width = 100
End With
End With
ワークブックを開くときのコード-上記のリンクに示されているのと同じ概念を適用します
Dim shp As Shape
With Sheets("Sheet1")
.Rows("1:" & .Rows.Count).EntireRow.Hidden = False
.Rows(1).Delete
Set shp = .Shapes("Picture 1")
With shp
.LockAspectRatio = msoFalse
.Height = 0
.Width = 0
.Top = Sheets("Sheet1").Range("A1").Top
.Left = Sheets("Sheet1").Range("IV1").Left
End With
End With
注:上記のコードで"Sheet1"
、関連するシート名に置き換え"Picture 1"
、関連する画像名に置き換えます。セルに画像を表示していA1
ます。これを修正して、Shapeを調整すること.Top
で、好きな場所に画像を表示できます。.Left
マクロが無効になっている場合のスナップショット