クライアントにExcelマクロを有効にするように強制する

クライアントにExcelマクロを有効にするように強制する

Excelでマクロを使用するには、ユーザーはマクロを有効にする必要があります。つまり、環境でマクロを実行するためのアクセス許可をExcelに付与する必要があります。マクロを有効にするには、ユーザーは数式バーの上にポップアップ表示されるセキュリティ警告の[コンテンツを有効にする]ボタンをクリックします。

クライアントにExcelマクロを有効にするように強制する

肝心なのは、世界中のすべての派手なマクロを書くことができるということですが、ユーザーがマクロを有効にしない限り、それらは実行されません。これは疑問を投げかけます。ユーザーにマクロを有効にするように強制できますか?答えはイエスです–少し注意が必要です。

アイデアは比較的単純です。たとえば、STARTという名前のシートを作成します。このシートには、マクロを有効にする必要があることを示す簡単な警告のみが含まれています。次に、そのSTARTシートを除く、ブック内のすべてのシートを非表示にします。最後に、ブックを開いたときにすべてのシートを再表示する単純なマクロを記述します。

クライアントにExcelマクロを有効にするように強制する

この時点で、ブックを開くと、Excelはユーザーにマクロを有効にするように求めます。表示されるのはスタートシートだけなので、ユーザーはそうすることを余儀なくされます。他のシートは非表示になります!

この手法を機能させるには、2つのマクロが必要です。1つのマクロは、ブックが閉じたときにSTARTシート以外のすべてを非表示にし、もう1つのマクロはブックが開いたときにSTARTシート以外のすべてを再表示します。

まず、ブックが閉じたときに発生する必要のあるアクションに取り組みます。:

キーボードのALT + F11を押して、Visual BasicEditorをアクティブにします

[プロジェクト]ウィンドウで、プロジェクト/ワークブックの名前を見つけ、その横にあるプラス記号をクリックして、すべてのシートを表示します。

ThisWorkbookをクリックします。

[イベント]ドロップダウンボックスで、BeforeCloseイベントを選択します。

クライアントにExcelマクロを有効にするように強制する

次のコードを入力または貼り付けます。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'ステップ1:変数を宣言する
  ワークシートとして薄暗い
'ステップ2:開始シートを再表示する
  Sheets( "START")。Visible = xlSheetVisible
'ステップ3:すべてのワークシートのループを開始します
  ThisWorkbook.Worksheetsの各wsについて
'ステップ4:各ワークシート名を確認する
  if ws.Name <> "START" Then
'ステップ5:シートを非表示にする
  ws.Visible = xlVeryHidden
  終了する場合
'ステップ6:次のワークシートにループする
  次のws
'ステップ7:ブックを保存する
  ActiveWorkbook.Save
エンドサブ

手順1では、wsというオブジェクトを宣言して、ループするワークシートごとにメモリコンテナを作成します。

手順2で、STARTシートが表示されていることを確認します。

手順3で、ループを開始し、このブック内のすべてのワークシートを評価することをExcelに通知します。

ステップ4では、STARTという名前を現在ループしているシートと比較するだけです。この手順により、次に来るアクションがSTARTシートを除くすべてのシートに確実に適用されます。

シート名が異なる場合は、手順5で、xlVeryHiddenプロパティを使用してシートを非表示にします。このプロパティは、シートを非表示にするだけでなく、ユーザーがユーザーインターフェイスを使用して手動でシートを再表示するのを防ぎます。

手順6で、ループバックして次のシートを取得します。

手順7では、すべてのシートが評価された後、マクロがブックを保存して終了します。

ここで、ブックを開いたときに発生する必要のあるすべてのアクションを処理するマクロを作成する必要があります。

ALT + F11を押して、Visual BasicEditorをアクティブにします。

[プロジェクト]ウィンドウで、プロジェクト/ワークブックの名前を見つけ、その横にあるプラス記号をクリックして、すべてのシートを表示します。

ThisWorkbookをクリックします。

[イベント]ドロップダウンボックスで、[開く]イベントを選択します。

クライアントにExcelマクロを有効にするように強制する

次のコードを入力または貼り付けます。

プライベートサブWorkbook_Open()
'ステップ1:変数を宣言する
  ワークシートとして薄暗い
'ステップ2:すべてのワークシートのループを開始します
  ThisWorkbook.Worksheetsの各wsについて
'ステップ3:すべてのワークシートを再表示する
  ws.Visible = xlSheetVisible
'ステップ4:次のワークシートにループする
  次のws
'ステップ5:スタートシートを非表示にする
  Sheets( "START")。Visible = xlVeryHidden
エンドサブ

手順1では、wsというオブジェクトを宣言して、ループするワークシートごとにメモリコンテナを作成します。

手順2で、ループを開始し、このブック内のすべてのワークシートを評価することをExcelに通知します。

手順3では、現在ループしているシートを再表示します。この手順では、各シートが表示されるときに、すべてのワークシートが効果的に再表示されます。

手順4で、ループバックして次のシートを取得します。

すべてのシートが表示されたら、手順5でSTARTシートを非表示にします。ここでも、xlVeryHiddenプロパティを使用して、ユーザーがユーザーインターフェイスを使用してシートを手動で再表示できないようにします。

両方のマクロが実装されると、ユーザーがマクロを有効にした場合にのみ機能するワークブックが作成されます。


スマートシート 9.1.1

スマートシート 9.1.1

Smartsheet は、プロジェクトの管理、ワークフローの構築、チームとの共同作業を可能にする動的な作業プラットフォームです。

共有ポイント

共有ポイント

SharePoint は、さまざまなワークフロー アプリケーション、「リスト」データベース、その他の Web コンポーネント、およびビジネス グループの共同作業を制御するためのセキュリティ機能を使用する Web ベースのコラボレーション システムです。

パーペチュアルカレンダー 1.0.38/1.0.36

パーペチュアルカレンダー 1.0.38/1.0.36

Van Nien Calendar は、携帯電話でカレンダーを表示するアプリケーションです。携帯電話で太陰太陽の日付をすぐに確認できるため、重要な仕事を計画することができます。

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook は、Microsoft Corporation によって開発されたビジネスおよび生産性アプリケーションです。

クリックアップ

クリックアップ

ClickUp は、あらゆるビジネスにとって最も評価の高い生産性プラットフォームの 1 つです。Google、Booking.com、サンディエゴ・パドレス、Uber などの大企業はすべて、職場の生産性を向上させるために ClickUp を使用しています。

PDF-XChange ビューア 2.5.322.10

PDF-XChange ビューア 2.5.322.10

PDF は、テキスト ドキュメントの読み取り、作成、送信に一般的に使用される形式になっています。その結果、この種のドキュメントに使用されるプログラムの数も増加しました。PDF-XChange Viewer は、ますます多くの PDF ビューアの 1 つです。

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice は、特に Excel、PowerPoint、Word など、Microsoft 365 に匹敵する Office アプリケーションの完全なスイートを提供します。プロジェクトをより効率的に管理できるようになり、いくつかのファイル形式がサポートされます。

iTaxviewer 1.8.7をダウンロード

iTaxviewer 1.8.7をダウンロード

iTaxViewer ソフトウェアは、現在最も人気のある XML ファイル読み取りソフトウェアです。このソフトウェアは、国税総局のXML形式の電子申告書を閲覧するためのアプリケーションです。

Nitro PDF リーダー

Nitro PDF リーダー

Nitro PDF Reader は、ほとんどの人が PDF ドキュメントを使用して毎日実行する基本的なタスクをすべてカバーする便利な PDF エディターです。

Foxit リーダー 12

Foxit リーダー 12

Foxit Reader は主に PDF リーダーですが、PDF ファイルの作成、署名、編集、注釈の追加も可能です。オペレーティング システム上で動作し、Microsoft Office パッケージのさまざまなプログラム用のプラグインがあります。