- ベストアンサー
エクセルのツール-オプションのユーザ設定リストの保存方法?
教えてください。 Excelのユーザ設定リストに独自のリストをかなりの数、設定しています。また、頻繁にOS(WinMe)を再インストールします。そのとき、ユーザ設定リストに追加した内容が消えてしまいます。これをどこか(Dドライブまたは他のメディア)に保存しておいて、簡単な操作で再設定する方法はないでしょうか? ご存知のかた、お教えください。お願いします。 Excel2002です。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
Excelのバージョンによって色々な方法があるみたいですね。 私もレジストリはいじらないようにしているので単純な方法を考えてみました。 バージョンも関係ないと思います。Excel97と2000で確認しました。ユーザー組み込みリスト数は250個強まで大丈夫?(未確認です) (1)追加したユーザー設定リストをシートに出力するマクロ→PrintMyCustumList (2)シートに書き出したユーザー設定リストを自動的に追加するマクロ→SetMyCustumList 組み込まれているリストは変更しないようにしてあります。Excel2002の組み込みリストが11個ならExcel97と2000と同じです。 (1)でシートに退避して(2)で復元する要領です。 ただし、(1)を実行する前に、『ツール→オプション』でオプションダイアログを1回表示させて下さい。表示したら閉じます。(これがうまく組み込めなかった) 2つのマクロを登録したシートに(1)を書き出しておけば復元や他のPCも同じにできるはずです。 ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュール で標準モジュールを挿入します。出てきたコードウインドウに下記マクロを貼り付けます。 ↓ここから Dim cstmListNum As Integer 'ユーザー設定リストの個数 Dim lstArray As Variant '設定リストを配列化 Dim L As Integer 'ユーザー設定リストカウンタ Dim elm As Integer 'ユーザー設定リスト要素 'ユーザー設定リストをSheet1に書き出す(組み込み以外) Sub PrintMyCustumList() With Worksheets("Sheet1") .Cells.ClearContents cstmListNum = Application.CustomListCount For L = 12 To cstmListNum lstArray = Application.GetCustomListContents(L) For elm = LBound(lstArray) To UBound(lstArray) .Cells(elm, L - 12 + 1) = lstArray(elm) Next Next End With End Sub 'Sheet1に表示されたユーザー設定リストを書き込む Sub SetMyCustumList() With Worksheets("Sheet1") If .Range("A1") = "" Then Exit Sub '組み込み以外を削除 cstmListNum = Application.CustomListCount For L = 12 To cstmListNum Application.DeleteCustomList L Next '組み込み以外を追加 cstmListNum = .Range("IV1").End(xlToLeft).Column For L = 1 To cstmListNum elm = Cells(65536, L).End(xlUp).Row lstArray = .Range(Cells(1, L), Cells(elm, L)) Application.AddCustomList ListArray:=lstArray Next End With End Sub
その他の回答 (6)
- a999a999
- ベストアンサー率68% (11/16)
2000以降はレジストリに記録するように なったようですね。すいませんでした。 #4さんのURL見ました。 これ以外に方法はないと思います。 勉強になりました。 ありがとうございました。 レジストリ HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Excel\Options "SmartList" 該当キーをすべて退避 "SmartList"のみ残して削除 該当キーを退避("SmartList"のみ版) すべて退避したものを戻す(復旧)。
お礼
重なるご回答まことにありがとうございます。 できればレジストリを触らないで解決したいと思います。
- a999a999
- ベストアンサー率68% (11/16)
下を見つけましたが http://support.microsoft.com/default.aspx?scid=http%3a%2f%2fwww.microsoft.com%2fJAPAN%2fsupport%2fkb%2farticles%2fj023%2f4%2f17.asp もう終わっているようですね・・
お礼
ご回答ありがとうございます。 参考URLを拝見しました。難しすぎてよく分かりません。エラー回避の方法のようですが、ユーザ設定リストの復元もこの方法でてできるのでしょうか。すみません、初心者なのでもっと簡単な方法があったら、と思います。もう少し、回答を待ってみて、なかったら、あきらめて、今までどおり、一から再入力したいと思います。ありがとうございました。
- kbonb
- ベストアンサー率51% (254/492)
こんにちは 以下のページがご参考になるのでは? [XL2000] ユーザー設定リストを共有する方法 http://www.microsoft.com/JAPAN/support/kb/articles/JP212/2/45.asp
お礼
ご回答ありがとうございます。 参考URLを拝見しました。ユーザー設定リストを共有する方法 ですね。 この記述のとおりにやって一応、Dドライブに「ユーザー設定リスト」のコピーができました(と思います)。 これでうまくいくか、不安ですが次回、OSを再インストールしたときに試してみたいと思います。 ただ、レジストリを触るのはなんとなく怖いです。以前にレジストリの最適化というのをやろうとして余計に調子悪くなってしまったことがあったので…。もっと簡単な方法がないでしょうか。もう少し、回答待ちたいと思います。ごめんなさい。
- a999a999
- ベストアンサー率68% (11/16)
下を参照下さい。 http://www.keep-on.com/~excelyou/2000lng5/200002/00020090.txt Windowsフォルダ直下の、ユーザ名8.xlb というファイルが関係しているという 話が書かれていました。 ファイルの日付を確認してから 新しいものを登録してみる。 日付が更新されるかを確認・・。 まだ調査中です。
お礼
ご回答ありがとうございます。 参考URLを見ましたが私のスキルが低いせいか、よく分かりませんでした。ごめんなさい。
- k_eba
- ベストアンサー率39% (813/2055)
再登場 ユーザー設定リスト項目が正しく保持されない場合 http://www.microsoft.com/japan/support/kb/articles/J051/5/35.asp これはトラブル回避にユーザー設定リスト項目をインポートして設定する方法 ですが 流用出来ますので紹介します。 ちなみに http://support.microsoft.com/default.aspx?ln=JA&pr=kbinfo& で EXCEL FOR WINDOWS OR・・・ ユーザー設定 で調べました 参考になれば幸いです
お礼
ご回答ありがとうございます。 初心者なのでよく理解できませんでした。もっと簡単な方法はないでしょうか。
- k_eba
- ベストアンサー率39% (813/2055)
ツールバーのカスタマイズ http://www.mars.dti.ne.jp/~hiroyuki/excel/toolbar.html を紹介します 参考になれば幸いです ポイントはツールバーをブックに登録するです
補足
ごめんなさい。説明不足でした。 Excelのツール→オプションにあるユーザ設定リストタブのことです。(Sun,Mon,で始まる)に自分で追加した内容の保存と復元についての質問です。よろしくお願いします。
お礼
ご回答ありがとうございます。 なんか、いいみたいです!nishi6さんすばらしい!さすが! 仰せのとおりに、マクロをコピーしてみました。PrintMyCustumListとSetMyCustumListというマクロが新規ワークシートのsheet1にできました。PrintMyCustumListを実行したところ、私の設定したユーザ設定リストの内容がズラズラーッとsheet1に表示されました。書き込みの方はまだ、未知数ですがうまく行きそうな予感がします。今度、実験して見ます。どうもありがとうございました。もし、うまくいかなったらまた質問します。よろしくお願いします。