掲題の通りなのですが、EXCEL2007で作成されたマクロ有効ファイル(XLSM形式)を
マクロ無効の状態で開く方法が分からず困っております。

マクロの内容は Workbook_Open 処理で、特定セルに入力されている
EXCELファイルを開き、自身は閉じるというものです。


Private Sub Workbook_Open()

Dim FileName As String

'1ファイル目
Range("A2").Select
FileName = ActiveCell.FormulaR1C1
Workbooks.Open FileName:=FileName
ThisWorkbook.Activate

'2ファイル目
Range("A3").Select
FileName = ActiveCell.FormulaR1C1
Workbooks.Open FileName:=FileName
ThisWorkbook.Activate

・・・・・・繰り返し

DoEvents
ThisWorkbook.Close

End Sub


上記の特定セルに設定してあるファイルパスを変更するためには
マクロを無効にして開かなければなりません。

マクロのセキュリティを変更して、「すべてのマクロを無効にする」を設定して
該当のファイルを開けば良い事は分かっているのですが、他に分かりやすい方法で
マクロ無効状態で開く方法があれば、ご教授頂ければと思います。

このQ&Aに関連する最新のQ&A

A 回答 (6件)

Win7、Excel2010、ダブルクリックでファイルを開く設定、の場合ですが、


Excelが開いていない状態で、
一旦、ファイル(またはショートカット)をクリックしてから、
Shiftキーを押し、そのまま、ダブルクリック、
以上の手順で、セーフモードでExcelとブックが開きます。
つまり、Private Sub Workbook_Open()は実行されません。
環境によって手順は異なると思いますけれども。

この回答への補足

昨日から他のOS・EXCEL環境にて同様の確認を
行ってみた所、Shift+ダブルクリックでマクロ無効と出来る端末もあれば
出来ない端末もあり、環境的な要因やEXCELの設定等も関係して
くるのでは無いかとの想定に至りました。

本来の用途目的は、サーバーのタスクマネージャーにマクロファイルを
設定して自動起動し、質問のマクロとは少々異なる幾つかの処理を
行っているのですが、今後他の者に該当ファイルの管理を引き継がなければならない為
自動起動せずに開く方法に、3重位の手順を作っておきたかったのですが
こちらの方法は環境に依存する可能性がありますので、手順に含める事を断念致しました。


ただ質問させて頂いた目的に対し、手法として出来る操作である事は間違いありませんので
度々の分かりやすい説明を踏まえた回答を頂いた点より、ベストアンサーとさせて頂きます。

また、他の方々におかれましても、ご回答・アドバイス本当にありがとうございました。

補足日時:2012/10/13 10:49
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。
当方の環境は、WindowsXP+EXCEL2010環境になります。

Shift キーを押しながらダブルクリックや
右クリックメニューの開く・編集・読み取り専用で開くを
試してみましたが、マクロ無効状態になりませんでした。

色々と試していた所、別途EXCELを起動しておいて
メニューよりファイルを開く際に、Shift+開く では
マクロが実行されずに開く事が出来ました。


直接、該当のファイルを開く場合は、Shift+ダブルクリック(開く)等では
Workbook_Open が実行されてしまいます。
EXCELの設定の問題でしょうか?

なお、マクロセキュリティは「すべてのマクロを有効」の設定環境となります。

お礼日時:2012/10/12 16:06

確認しました。



エクスプローラからでは、Shift + も、Ctrl+ も、どの方法も出来ませんでした。特に、エクスプローラ上からでは、Shift + は、多くのファイルが選択されてしまうので、ヒヤッとしました。

メニューから、Ctrl + で、Excelを選択する方法は、セーフモードで立ち上がるから、それは、それでもよいと思うのですが、それは目的とは違うようです。

今のところ、Excel 2010はないのですが、
私が行う場合(Auto_Openの自動実行をさせないために)は、

 最初に、Excelで、新規ワークブックが立ち上げます。
 次に、Excelのメニューから、ファイル名を選び、
 Shiftキーを押しながら、ファイル名を選び、クリックします。
 そうすれば、Auto_Openは実行されません。

ところで、話は別ですが、質問のマクロは、少し危ういような気がしますが。
今回のことで、ファイル名を別のブックにしたり、テキストにしたり、iniファイルにしたりする方法もあるのではないかと思います。

サンプルを作ってみました。
以下は、ブックと同じフォルダに、"FileNames.txt"を置いて使うものです。
FileNames.txt の中身は、

-------------
f120929.xls
f121002.xls
f121005.xls
f121008.xls
-------------
のようになっています。もし、自動実行を止めたい場合は、テキストファイルの先頭に、ありえないファイル名を書けば、エラーが出て止まります。fAr(10)は、現在9個ですが、この数を増やせば、もっとブックが開けます。常識的な範囲で入れれば良いです。

'//
Private Sub Workbook_Open()
 Dim Fno As Integer
 Dim f As String
 Dim mPath As String
 Dim fAr(10) As Variant 'ファイルリストは9個まで、最後は空ける
 Dim i As Long
 Dim j As Long
 'ファイルリストは、このブックと同じフォルダに置かなくてはなりません。"
 Const FILE_LIST As String = "FileNames.txt"
 On Error GoTo ErrHandler
 mPath = ThisWorkbook.Path & "\"
 Fno = FreeFile()
 If Dir(mPath & FILE_LIST) = "" Then
  MsgBox "file list が見つかりません。", 48
  Exit Sub
 End If
 Open mPath & FILE_LIST For Input As #Fno
 Do While Not EOF(Fno)
  Line Input #Fno, f
  fAr(i) = f
  i = i + 1
 Loop
 For j = 0 To UBound(fAr) - 1 '最後のIndex は、必ず開けます。
  Workbooks.Open fAr(j)
  If fAr(j + 1) = "" Then Exit For
 Next j
 ThisWorkbook.Close False
ErrHandler:
  MsgBox Err & Err.Description
End Sub
    • good
    • 1
この回答へのお礼

ご回答、アドバイスありがとうございます。
実際のマクロの内容は INIファイルの参照も含めて
様々な事をしており、普段はサーバーのタスクスケジュールで
設定して幾つかの処理を自動で行わせているのですが
質問として上げるのに辺り、短絡的に作った内容なのです。

他の者が今後管理する事になり、これまではINIファイルにマクロ自動起動の
フラグを持たせて管理をしていたのですが、それ以外にも2重3重の防衛手段
(フラグの書換を忘れていてもリカバー出来る様に)手順を考えていたので
そのうちの1つとして、質問させて頂きました。

あと、提示頂いたサンプルですがINIファイル内容より、ファイル名を取得してきたら
Dir関数等でファイルの存在チェックを掛けると、更に良いと思います。

お礼日時:2012/10/13 10:35

#2、3、cjです。


すみません。訂正だけ。
#2
(誤)
> 以上の手順で、セーフモードでExcelとブックが開きます。
(正)
以上の手順で、デザインモードでExcelとブックが開きます。

セーフモードはCtrl+でアプリケーション開くやつでしたね。
失礼しました。
    • good
    • 2
この回答へのお礼

度々ありがとうございます。
セーフモード、デザインモードの認識が
これまで無かったので勉強になります。

わざわざ、ありがとうございます。

お礼日時:2012/10/13 10:06

落ち着いてゆっくりいきましょう。




エクスプローラーなどで、シングルクリックでファイルを選択。
その後、Shift+Enterキーで開く動作、ファイルが開ききるまでShiftは押しっぱなし。



言ってみれば、ダブルクリックと同じ動作なんですけどね。
選択して、一呼吸おいて、開いてみませんか。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

記載頂いた内容は、先の回答や私なりに調べた内容から
認識しておりますので、問題ございません。


ダブルクリック以外にも、該当ファイル選択してから
(1度クリックして選択されている状態)
右クリックメニューを開き、Shiftキーを押下しつつ「開く」や
Shiftキーを押下しつつ、右クリックメニューを開き
「編集」・「読み取り専用で開く」等 ※Shift+右クリック専用メニュー
Shiftキーを押下するタイミングや、押し続けているタイミング等も
色々と試してみても、マクロ無効状態で開けないので
環境的な問題なのかもと思ってきております。

該当ファイル以外にも、類似の WorkBook_Open で処理を行う
マクロを組んだXLSMファイルを作成して試してみておりますが
同じ状態であるため、ファイルの問題では無さそうなのです。


・・・あと自分の掲載した質問への追記的なものってどうやるんだろう・・・;

お礼日時:2012/10/12 18:19

こんにちは。

#2、cjです。
解決策は見つけたということのようですので、よかったです。

でもまぁ、できれば簡単な方が良いかな?色々方法があった方がよいかな?
ということもあって、一応、もう一度レスしてみます。

私の#2、
> 一旦、ファイル(またはショートカット)をクリックしてから、
これ↑伝わっていますでしょうか?
対象ファイルのアイコンがアクティブな状態にしてから
Shift + ダブルクリック、という意味ですので、
いきなり、Shift + ダブルクリック、ではうまくいかないです。

もっとも、Vista環境は私の方、確認しようがないので、OSの問題で違っていたとしても
不思議ではありませんが。
    • good
    • 0
この回答へのお礼

度々のご回答ありがとうございます。

> 一旦、ファイル(またはショートカット)をクリックしてから、

こちらの意味は重々理解しております。

ダブルクリック以外にも、該当ファイル選択してから
(1度クリックして選択されている状態)
右クリックメニューを開き、Shiftキーを押下しつつ「開く」や
Shiftキーを押下しつつ、右クリックメニューを開き
「編集」・「読み取り専用で開く」等 ※Shift+右クリック専用メニュー
Shiftキーを押下するタイミングや、押し続けているタイミング等も
色々と試してみても、マクロ無効状態で開けないので
環境的な問題なのかもと思ってきております。

該当ファイル以外にも、類似の WorkBook_Open で処理を行う
マクロを組んだXLSMファイルを作成して試してみておりますが
同じ状態であるため、ファイルの問題では無さそうなのです。

お礼日時:2012/10/12 18:06

Shiftキーを押しながらダブルクリックで開く・・・で行けたんじゃないかと。

    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
当方の環境は、EXCEL2010環境になりますが
Shift キーを押しながらダブルクリックや
右クリックメニューの開く・編集・読み取り専用で開くを
試してみましたが、マクロ無効状態になりませんでした。

なお、Shiftキーはファイルが開かれるまで
ずっと押しっぱなしにしました。

EXCELの設定の問題でしょうか?

お礼日時:2012/10/12 14:12

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル(マクロ記録)

よろしくお願いします。
エクセルで、印刷マクロを作ろうと考えています。
             (基本、入門者です)
マクロ記録で、作っていますが、
記録終了するたびに「 印刷 」がかかっては、
用紙が何枚あっても足りません。

いい考えがありましたら、お教えください。
お願いします。

Aベストアンサー

#3の回答者です。

>出来たら、この i=1 の意味を教えていただけませんでしょうか?
単に、それはページ数です。

ヘルプを引用します。(PrintOut で調べました)

式.PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName, IgnorePrintAreas)

From オプション 印刷を開始するページの番号を指定します。この引数を省略すると、最初のページから印刷します。
To オプション 印刷を終了するページの番号を指定します。この引数を省略すると、最後のページまで印刷します。

と出てきます。

Qエクセル2003 マクロのセキュリティを「低」にしても、マクロを無効にしてファイルを開く方法

http://oshiete1.goo.ne.jp/qa5101957.html
で質問したものなのですが、
アクセスでは教えていただいたとおり、Shiftキーを押しながら開くと無効にできるのですが、
エクセルに関しては、Shiftキーを押しても、ブックのオープンイベントが発生します。

エクセルでも場合によっては無効にして開きたい時はどうすればいいでしょう?

よろしくお願いします。

Aベストアンサー

こんにちは。

ふつう、「Shift を押しながら開く」ということは、エキスプローラ上ではなくて、一旦、Excelを開いて、「開く」のメニューから、ファイルを選択して「Shiftを押しながら開く」を実行します。

エキスプローラ上から、ファイルを選択して開こうとすると、アドイン等は解除されるのですが、実際の、目的のファイル(ブック)のOpenイベント・ドリブン型マクロは起動してしまいます。

ただし、逆に、メニューから、「Shift を押しながら開」いてみても、アドインなどの特殊なマクロに関しては動いています。

それでも気になるようなら、「スタート」から、Excelを選択して開くときに、Ctrl を押しながら立ち上げてください。「セーフモード」で、一切、マクロもアドインも動きません。

Qエクセル マクロコードの記述の勉強

独学でエクセルでのマクロのコード記述ができるようになりたいのですが、コードがかける人はどのようにしてかけるようになったのでしょうか?

プログラミング関係にはまったくの初心者なので、入門本を立ち読み程度読んでみたのですが、「面白そうだが、かなり手強そう」というような印象でした。

現実的な問題として、実際にコードをかける人は、プログラミング関係の学校等で学んだ人ぐらいしかいないのでしょうか?

めざすレベルはエクセルでこうしたいと考えたものを調べながらコードをかける程度のレベルです。

Aベストアンサー

> 実際にコードをかける人は、プログラミング関係の
> 学校等で学んだ人ぐらいしかいないのでしょうか?

そんな事ないです。私も独学で覚えましたから。

エクセルはマクロ記録がありますので、実際の操作を記録して書かれたコードを追っていったり、書き直したり出来ます。
VisualBasicEditor画面でコードにカーソルを置き、F1キーを押すとVBAヘルプ(たしか標準ではインストールされないので追加インストールの必要がある)が開くので、意味を調べたり、サンプルコードを見たりして覚えて行きました。
ネットにも沢山サンプルがありますし。

変数の使い方とforやif等を覚えてマクロ記録を直すだけでも結構便利になります。

Qマクロを削除したのに、開くたびに「無効にしますか?」

表計算の中で、入力の一部に「マクロの記録」と「フォーム」のボタンを組合せて使っていましたが、この部分を全て削除し、マクロを使わない入力方式に変更しました。ところが、このファイルを開くたびに、『マクロが使われている。無効にするか、有効にするか』旨、問合せてきます。これを止めさせる方法を教えてください。

Aベストアンサー

>指示された通りにやってみました。「VisualBasicEditor」 の画面は、灰色で何も表示されません。「左側のツリー表示」なるものも出てきませんでした。

表示 > プロジェクトエクスプローラ をくりっく

これで表示されませんか?

表示されたら標準モジュールをさがして解放してみてください。


>なお、私の削除手順は、「ツール」-「マクロ」-「マクロ」-”micro*”-削除 でした。これだと、モジュールは開放されていないでしょうか?

それだと開放されないです。

Qエクセルについているマクロが出てこない・・・

 エクセルをひらき、ツール→マクロ→マクロでマクロの作成ができると聞きましたが、私のエクセル2002ではマクロのその機能が空欄状態です。復帰や回復できる方法を教えて下さい。

Aベストアンサー

(1)自分でマクロの記録を採る。
    ツールーマクロー新しいマクロの記録
(2)または他人がマクロの記録をとった。
   (3)他人がVBAコード(プログラム)を組んだ
    ツールーマクローVBEープログラム作成
場合に出てくる。(1)(2)(3)ともやっていないから、出てこないのは当然。
(1)なぞはマクロの画面でマクロー編集でコードが見れます。
ーーー
本でもWEBでも、マクロに関する本1冊か、「エクセル マクロ」でWEB照会して、勉強し。予備知識をえるべきです。

QExcelのマクロ有効ファイルの署名について

Excel2007で、マクロ有効ファイル(.xlsm)を作成しました。
VisualBasicを使っています。

会社にはサーバーがあり、サーバー内に社員全員が見ることのできるフォルダを作ってあり、
ファイルをそのフォルダ内に保存しました。
社員のだれもが自分のPCでファイルの変更・保存ができるようにします。
全員のPCについて「開発タブ」を表示してもらい、マクロの実行を各自のPCでできるようにしました。

作成した私のPCでは、問題なくこのファイルを開いて変更・保存をすることができますが、
他の社員のPCでは、マクロの実行ができませんでした。

開発タブのマクロのセキュリティから、「全てのマクロを有効にする」を選んだらできるようになりましたが、推奨しません とありますし、できれば避けたいと思います。

色々と調べてみたのち、デジタル署名をしてみました。
作成した私のPCの「すべてのプログラム」から
MicrosoftOffice→MicrosoftOfficeツール→VBAプロジェクトのデジタル署名
で署名を作成し、
VisualBasicの「ツール」で署名を選択し設定しました。

この後の各社員のPCの設定について、どのようにするのが適切か、
アドバイスいただけましたらと思います。

どうぞよろしくお願いいたします。

なお、各社員のPCでは、Excel2007とExcel2010があります。

Excel2007で、マクロ有効ファイル(.xlsm)を作成しました。
VisualBasicを使っています。

会社にはサーバーがあり、サーバー内に社員全員が見ることのできるフォルダを作ってあり、
ファイルをそのフォルダ内に保存しました。
社員のだれもが自分のPCでファイルの変更・保存ができるようにします。
全員のPCについて「開発タブ」を表示してもらい、マクロの実行を各自のPCでできるようにしました。

作成した私のPCでは、問題なくこのファイルを開いて変更・保存をすることができますが、
他の社員のPCでは、マク...続きを読む

Aベストアンサー

方法1:
アドインにして配布し,組み込んで使って貰う。


方法2:
デジタル署名を取り付けたブックを保存し,配布して開いて貰う。

Excel2007の場合
事前にセキュリティセンターのマクロの設定で
デジタル署名されたマクロを除き,すべてのマクロを無効にする
または
警告を表示して全てのマクロを無効にする
にしておき,
セキュリティの警告「マクロが有効にされました」が現れるのでオプションをクリック,
この発行者のドキュメントを全て信頼するにマークしてOKする

Excel2010の場合
「Microsoft Excelのセキュリティに関する通知」ダイアログが現れるので「発行元からのコンテンツを常に信頼する」のボタンをクリックする

と,以後署名を付けたマクロブックを無条件に開いて使用できます。

Qエクセル2010で作成したマクロ

エクセル2010で作成したマクロブックがあります。
このエクセルを知人にメールで送りました。

知人のエクセルは2007です。
マクロブックのフォームボタンを押しても何も動作しない状況との事です。

エクセル2010で作成したマクロブックはエクセル2007と互換性がないのでしょうか?

素人の質問で申し訳ありませんが、ご指導お願いいたします。

Aベストアンサー

>エクセル2010で作成したマクロブックはエクセル2007と互換性がないのでしょうか?

ご相談の状況からすると、まずそういう事はありません。
まぁ2010でしか動かない内容であなたがマクロを作成した可能性は確かにありますが、その場合でも「何も動作しない」という事はありません。ふつーにエラーが出て止まります。



一応あなたの側で確認しておくべきポイントとしては、
○間違ったブックを送っていないか再確認する
 ・ちゃんとマクロを付けたブックを送ったか確認する
 ・名前を付けて保存でファイルの形式をマクロ有効ブックにして保存したのを送ったか再確認する
といったところをよく確認してください


先方に対してあなたが確認すべきポイントとしては、
○「何も起こらない」とは、具体的にどんな状況なのか再確認する
 ・ホントにうんともすんとも反応が無いということなのか
 ・実は何かエラーメッセージっぽいダイアログが現れて、OKをクリックしてもマクロが動作した様子が無いとかの状況では無かったか



具体的な状況が明らかになったら、ようやく対処を検討する事ができるようになります。
●そもそもどういうマクロを作成したのか、ご自分の作成したマクロをよく確認して、「反応が現れない」マクロを書いてたんじゃないのか再確認する
 たとえば無意味にon error resume nextのような仕込みをしてたりしないか
 たとえば不適切なデータに対して何も作動せずに終わってしまうようなそもそも作りにしてたんじゃないか
 とか。

●実は何かダイアログが出てたのなら、具体的にどんなダイアログなのか正確に聞き取って、あなたの方で対処を考える
 「マクロが無効になってる」のなら、マクロを有効にして実行するように伝える
 とか。

>エクセル2010で作成したマクロブックはエクセル2007と互換性がないのでしょうか?

ご相談の状況からすると、まずそういう事はありません。
まぁ2010でしか動かない内容であなたがマクロを作成した可能性は確かにありますが、その場合でも「何も動作しない」という事はありません。ふつーにエラーが出て止まります。



一応あなたの側で確認しておくべきポイントとしては、
○間違ったブックを送っていないか再確認する
 ・ちゃんとマクロを付けたブックを送ったか確認する
 ・名前を付けて保存でファイル...続きを読む

QWordのファイルを開くとマクロを有効か聞いてくる

よろしくお願いいたします。
友人のPC:Windows2000 Word2002 ですが、
Wordの文章を開くたびに「マクロを有効にしますか」と聞いてくるそうなのです。
私には経験のないことなので、どなたか教えていただければと思います。
どうぞよろしくお願い申し上げます。

Aベストアンサー

こんにちは。

マクロファイルを無効にしたり、削除する前に、

確かに、ツール-マクロ-セキュリテイ
「高」にすれば出てこなくなるはずです。

しかし、それは本来の使い方とは、違う状況の場合です。そのまま「中」のままでよいです。

通常の設定では、同じく[セキュリティ]ダイアログの中の、「信頼できる発行元」の下のほうに、「組み込み済みのアドインとテンプレートを全て信頼する」には、チェックが入っているはずです。

また、Normal.dot は、通常は、以下のようなダイアログは出ません。また、通常、トラブルがない限りは、設定がリセットになりますので、削除しないでください。

「セキュリティの警告」というタイトルのダイアログが出て、
--------------------------------------------------------
"C:\........." は、マクロを含んでいます。

マクロにはウイルスが含まれている場合があります。通常、マクロを無効にすると安全ですが、マクロが適正な場合、機能が使えなくなります。
--------------------------------------------------------
と出てきているはずです。実際、ワーム型のウィルスでは、このようなダイアログメッセージは、一回限りのはずです。

それは、どこのファイル(.dot) か、メモしてください。

簡単に、ダイアログを出さない方法は、

メニューからツール-「テンプレートとアドイン」の中の、そのメモしたテンプレートのチェックボックスをはずせば、メッセージは出なくなります。しかし、それは、もしかしたら使うものかもしれませんね。

それは、時々、Win2k以上では、共有設定場所にあるテンプレートが問題を起こすことがあります。主に古いテンプレートやアドインのインストールプログラムには、設定場所に問題があります。

"C:\Program Files\Microsoft Office\OFFICE10\STARTUP\"

ここには、何も入れないでください。
一旦、Wordを終了して、そのファイルのありかと存在を、エクスプローラで調べてください。(エクポローラのツ-ル-フォルダオプション-表示/全てのファイルとフォルダを表示する、にはチェックは入れておいてください)

右クリックして、そのファイルのプロパティの詳細をみると、そのメーカーなどが書かれていますから、確認できるかと思います。覚えのないものなら、即刻、削除します。

使うテンプレートやアドインでしたら、

C:\Documents and Settings\<ユーザー名>\Application Data\Microsoft\Word\STARTUP\

の中に入れますと、メッセージは出なくなります。もちろん、テンプレートやアドインは、使用出来ます。

こんにちは。

マクロファイルを無効にしたり、削除する前に、

確かに、ツール-マクロ-セキュリテイ
「高」にすれば出てこなくなるはずです。

しかし、それは本来の使い方とは、違う状況の場合です。そのまま「中」のままでよいです。

通常の設定では、同じく[セキュリティ]ダイアログの中の、「信頼できる発行元」の下のほうに、「組み込み済みのアドインとテンプレートを全て信頼する」には、チェックが入っているはずです。

また、Normal.dot は、通常は、以下のようなダイアログは出ません。...続きを読む

Qエクセルで作成したマクロが他のシートに反映しない

必要に迫られ始めてマクロをエクセル上で作成してみました。(初心者)
そのマクロを違うエクセルファイル上でも反映させたいのですが
マクロを作ったおおもと(最初)のファイルを閉じてしまうと違うエクセルファイルを開いてもマクロが反映されていません。
マクロでの命令内容としては 
エクセル上の数字の羅列→グラフ作成→上書き保存 という手順で作りました。
他のエクセルファイルも同じように数字の羅列があります。それを同じ作業(グラフ作成→上書き保存)したいのです。
一度作ったマクロを他のエクセルファイルにも反映させるにはどうしたら良いのでしょうか?
説明がわかりにくくてすみません。
よろしくお願いします。

Aベストアンサー

マクロの記録先を「個人用マクロブック」にするのが良いと思います。
一回マクロの記録を行い「保存先」を「個人用マクロブック」にします。するとPERSONAL.XLSという特別なブックが作成されます。

このブックの標準モジュールシートに先に作ったマクロを貼り付けてください。

そうすればエクセルを開くと、どのブックでもマクロが実行可能になります

QEXCELのマクロでワードファイルを開きたい

いつもお世話になります。初心者ですのでよろしくお願いします。

WORDで50種類くらいの帳票を作成しました。一つのファイルに50ページあるのではなくて、50のファイルに一つずつ帳票を作成しました。また、EXCELでこれらの帳票の目次を作成しました。これは1枚のシートに50の帳票のタイトルが一覧表となっています。このエクセルの目次シートから必要なタイトルを選択するとそれに該当する帳票のワードファイルが開くようにしたいのですが、マクロでなんとかなりませんでしょうか?

EXCEL2000、WORD2000を使用しています。補足、お礼は明日になりますが、よろしくお願いします。
わかりづらい説明で申し訳ありません。

Aベストアンサー

(例データ)
A1:B2以下
A列   B列
XX帳票aaa.doc
YY帳票テスト1.doc
・・・・・
(コード)
シートのSelectionChangeイベントで
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Mid(Target.Address, 1, 2) = "$B" Then
fn = """" & Target & """"
Set wd = CreateObject("word.Application")
wd.Visible = True
wd.documents.Open Filename:="c:\My Documents\" & fn
End If
End Sub
B列の行をクリックすると、B列の文書名の文書が開く。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報