プロが教えるわが家の防犯対策術!

記録や編集したマクロを個人用マクロに登録して今まで使っていたのですが、今日EXCELを強制終了したとたんEXCELを起動すると今まで登録したマクロが入っているpersonal.xlsが立ち上がらなくなりました。
personal.xlsの存在は確認し、一度別の場所に移動して、再度登録しなおしたのですが、どうしても登録したマクロが参照できません。
どうしたらよいのでしょうか?
OSはXPです。

A 回答 (5件)

モジュールを参照させていただきました。


モジュール自体はおっしゃるように正常ですね。
私も貼り付けを行ってみましたが、正常に動きました。
ボタンも仮のものですが、作成してみて動かしたところきちんと動きました。
そして、personal.xlsをxlstartフォルダより削除し、再度personal.xlsとして保存したら、きちんと動きました。

一応私の手順を書いてみますね。

1.Excelを新規で起動する。
2.ツールのマクロ→新しいマクロの記録→個人用マクロブック→「OK」をクリックする。
3.すぐさま記録終了をクリックする。
4.VBEを起動する。
5.personal.xlsの標準モジュールを開き「コードの貼り付け」を行う。
6.VBEの上書き保存を行う。
7.Excelに戻す。
8.ツールバーを新たに製作し、そのツールバーにボタンを製作し、そしてそのボタンにマクロの登録をする。(C予約マクロを登録しました。ユーザー設定を起動してます。)
9.Excelを×で閉じます。
10.「book1」を保存しますか?」は「いいえ」を選択します。
11.再度Excelを起動します。
12.Excelのシートは新規のシートですが、ツールバーは残っています。そして、ツールのマクロをあけてみると「PERSONAL.XLS!C予約」というマクロは存在しています。

というような状況です。
なので、もしこの手順と同様のことをされても無理、他のPCで同じ動作をしてみても無理とのことでしたら、私もお手上げ状態です。
すいません。
    • good
    • 0
この回答へのお礼

お手数おかけしました。他のPC上では行えるので、やはりこのPCだけが変なんだと思います。
今は臨時で違うPCをのほうに設定してそちらで処理を行っています。もう少し考えてだめだったら再インストールかOS自体からクリーンインストールするしかないですかね。本当に親切にありがとうございました。

お礼日時:2003/08/20 12:53

お返事遅れてすいません。



>上書き保存してPERSONAL.xlsが表示されているのですが、再度EXCELを起動してもやはり立ち上がってきません。

そうですか・・・。
そうしましたら、VBEの画面を空けていただいて、昨日貼り付け等を行ったモジュールを一度こちらに貼り付けていただいてよろしいでしょうか?
一度私も同様のことをしてみます。
もちろんプライバシー情報はマスクしてくださいね。

>アプリケーションの修復を試みてみましたが、同じでした。

でしょうね。
Excel自体がおかしくなったわけではないですしょうしね。

>結構、EXCELには自信ありだったんですがお手上げです。

がんばってくださいね。
一度該当のbasをエクスポートした後、「***.bas.txt」かなんかにしてデスクトップ保存した後、一度「personal.xls」自体を削除してみましょうか。

OSがNT系ならば

D:\Documents and Settings\ユーザー名\Application Data\Microsoft\Excel\XLSTART

のなかに入っているはずです。

これをした上で再度、

1.リネームしたxlsファイルを立ち上げた状態で、alt+f11をクリックしてVBEを起動する。
2.VBAProject(PERSONAL.XLS)をダブルクリック後、標準モジュール→モジュール(名前は任意)の順序でクリックをしていく。
3.下記までの部分をコピーをする。

Sub マクロ名()~End Sub

4.「3」でコピーしたものをメモ帳等に貼り付けておく。
5.その上で、標準モジュール内の「モジュール」の上で右クリックをし、「モジュールの開放」をしてみる。
6.エクスポートは一応「はい」にしておいて、デスクトップ上に保存しておきましょう。(***.basができるはずです。)
7.「1」のファイル及びVBEを保存せずに閉じておきましょう。
8.再度新規でExcelを起動します。
9.ツールのマクロ→新しいマクロの記録をクリックし、個人用マクロブックとしてマクロ名をお好みでつけて「マクロの記録」を開始します。
10.あえて何も操作せずに記録を終了させます。
11.この状態で再度、alt+f11でVBEを起動し、VBAProject(PERSONAL.XLS)をダブルクリック後、標準モジュール→モジュール(名前は「9」でつけたもの)の順序でクリックをしていく。
12.これでSubのあたりをクリック後、ctrl+Aで範囲選択をし、内容をすべてdeleteをする。
13.「3」でコピーした内容をすべて貼り付けて、保存をクリックします。
14.xlsファイルを保存する場所はデスクトップでいいと思います。ファイル名も任意で。
15.VBEを×で閉じた後、Excelのウィンドウの[再表示]をクリックし、その中にPERSONAL.XLSがあるかどうかをご確認ください。あとはマクロが実行できるかもご確認ください。
16.再度上書き保存をします。
17.「15」でOKならば、デスクトップにバックアップ用に保存をした「bas」ファイルは削除してもいいです。

の操作をしていただいていいですか?

この回答への補足

**予約の受付表でセルに色をぬるだけの簡単なものです。ですのでVBA自体はたいした処理をしていません。ただし、EXCELに詳しくない人が受付けをしますのでツールバーを作ってそこのボタンにこれらのマクロを貼り付けて使っています**

Sub M予約()
Selection.Interior.ColorIndex = 37
Selection.Interior.Pattern = xlSolid
With Selection
.HorizontalAlignment = xlCenter
.WrapText = True
End With
End Sub
Sub C予約()
Selection.Interior.ColorIndex = 35
Selection.Interior.Pattern = xlSolid
With Selection
.HorizontalAlignment = xlCenter
.WrapText = True
End With
End Sub
Sub V予約()
Selection.Interior.ColorIndex = 38
Selection.Interior.Pattern = xlSolid
With Selection
.HorizontalAlignment = xlCenter
.WrapText = True
End With
End Sub

**一部分抜粋ですが、これらの処理が10数個存在します**

補足日時:2003/08/19 19:52
    • good
    • 0

お返事遅れてすいません。



>上書き保存してPERSONAL.xlsが表示されているのですが、再度EXCELを起動してもやはり立ち上がってきません。

そうですか・・・。
そうしましたら、VBEの画面を空けていただいて、昨日貼り付け等を行ったモジュールを一度こちらに貼り付けていただいてよろしいでしょうか?
一度私も同様のことをしてみます。
もちろんプライバシー情報はマスクしてくださいね。

>アプリケーションの修復を試みてみましたが、同じでした。

でしょうね。
Excel自体がおかしくなったわけではないですしょうしね。

>結構、EXCELには自信ありだったんですがお手上げです。

がんばってくださいね。
一度該当のbasをエクスポートした後、「***.bas.txt」かなんかにしてデスクトップ保存した後、一度「personal.xls」自体を削除してみましょうか。

OSがNT系ならば

D:\Documents and Settings\ユーザー名\Application Data\Microsoft\Excel\XLSTART

のなかに入っているはずです。

これをした上で再度、

1.リネームしたxlsファイルを立ち上げた状態で、alt+f11をクリックしてVBEを起動する。
2.VBAProject(PERSONAL.XLS)をダブルクリック後、標準モジュール→モジュール(名前は任意)の順序でクリックをしていく。
3.下記までの部分をコピーをする。

Sub マクロ名()~End Sub

4.「3」でコピーしたものをメモ帳等に貼り付けておく。
5.その上で、標準モジュール内の「モジュール」の上で右クリックをし、「モジュールの開放」をしてみる。
6.エクスポートは一応「はい」にしておいて、デスクトップ上に保存しておきましょう。(***.basができるはずです。)
7.「1」のファイル及びVBEを保存せずに閉じておきましょう。
8.再度新規でExcelを起動します。
9.ツールのマクロ→新しいマクロの記録をクリックし、個人用マクロブックとしてマクロ名をお好みでつけて「マクロの記録」を開始します。
10.あえて何も操作せずに記録を終了させます。
11.この状態で再度、alt+f11でVBEを起動し、VBAProject(PERSONAL.XLS)をダブルクリック後、標準モジュール→モジュール(名前は「9」でつけたもの)の順序でクリックをしていく。
12.これでSubのあたりをクリック後、ctrl+Aで範囲選択をし、内容をすべてdeleteをする。
13.「3」でコピーした内容をすべて貼り付けて、保存をクリックします。
14.xlsファイルを保存する場所はデスクトップでいいと思います。ファイル名も任意で。
15.VBEを×で閉じた後、Excelのウィンドウの[再表示]をクリックし、その中にPERSONAL.XLSがあるかどうかをご確認ください。あとはマクロが実行できるかもご確認ください。
16.再度上書き保存をします。
17.「15」でOKならば、デスクトップにバックアップ用に保存をした「bas」ファイルは削除してもいいです。

の操作をしていただいていいですか?
    • good
    • 0

#1です。



>EXCELを全て終了させて、再度立ち上げVBEを起動してもPERSONAL.xlsのモジュールがでてきません。

Excelを保存した際ですが、PERSONAL.xlsの方は上書き保存されましたか?
上書き保存の後、再度Excelを起動したら、PERSONAL.xlsという形でExcelが起動されてくると思うのですが。上書き保存後、タイトルバーにPERSONAL.xlsと表示されているかどうかを教えてくださいね。

この回答への補足

mintochanさん再度の回答ありがとうございました。
上書き保存してPERSONAL.xlsが表示されているのですが、再度EXCELを起動してもやはり立ち上がってきません。
アプリケーションの修復を試みてみましたが、同じでした。
結構、EXCELには自信ありだったんですがお手上げです。

補足日時:2003/08/19 16:07
    • good
    • 0

>personal.xlsの存在は確認し、一度別の場所に移動して



ということですが、そのxlsファイルをリネーム(personal01.xlsなどにする)として、通常通り立ち上がってきますでしょうか?

立ち上がるとのことでしたら、下記の操作をするといけるかもしれません。

1.リネームしたxlsファイルを立ち上げた状態で、alt+f11をクリックしてVBEを起動する。
2.VBAProject(PERSONAL.XLS)をダブルクリック後、標準モジュール→モジュール(名前は任意)の順序でクリックをしていく。
3.下記までの部分をコピーをする。

Sub マクロ名()~End Sub

4.「3」でコピーしたものをメモ帳等に貼り付けておく。
5.その上で、標準モジュール内の「モジュール」の上で右クリックをし、「モジュールの開放」をしてみる。
6.エクスポートは一応「はい」にしておいて、デスクトップ上に保存しておきましょう。(***.basができるはずです。)
7.「1」のファイル及びVBEを保存せずに閉じておきましょう。
8.再度新規でExcelを起動します。
9.ツールのマクロ→新しいマクロの記録をクリックし、個人用マクロブックとしてマクロ名をお好みでつけて「マクロの記録」を開始します。
10.あえて何も操作せずに記録を終了させます。
11.この状態で再度、alt+f11でVBEを起動し、VBAProject(PERSONAL.XLS)をダブルクリック後、標準モジュール→モジュール(名前は「9」でつけたもの)の順序でクリックをしていく。
12.これでSubのあたりをクリック後、ctrl+Aで範囲選択をし、内容をすべてdeleteをする。
13.「3」でコピーした内容をすべて貼り付けて、保存をクリックします。
14.xlsファイルを保存する場所はデスクトップでいいと思います。ファイル名も任意で。
15.VBEを×で閉じた後、Excelのウィンドウの[再表示]をクリックし、その中にPERSONAL.XLSがあるかどうかをご確認ください。あとはマクロが実行できるかもご確認ください。
16.再度上書き保存をします。
17.「15」でOKならば、デスクトップにバックアップ用に保存をした「bas」ファイルは削除してもいいです。

以上でどっかに引っかかるようでしたら、またご連絡ください。

この回答への補足

mintochanさん回答有難うございます。1~16までの作業を行いました。PERSONAL.xlsも作成され、[再表示]でも確認できました。その時点でのマクロの実行も問題なくできました。
EXCELを全て終了させて、再度立ち上げVBEを起動してもPERSONAL.xlsのモジュールがでてきません。
やっぱり壊れちゃってるのかな???

補足日時:2003/08/17 10:43
    • good
    • 0

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