[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『個人マクロ』(たま)
エクセル2003のブックには、ボタンを押すと、個人マクロが作動していたのですが、個人
マクロの拡張子がXLSBになってファイルのパスが違うみたいで作動しません。そのボタン
が、示してあるアドレスを見ると C:\Documents and Settings\ユーザー名\
ApplicationData\Microsoft\Excel\XLSTART\PERSONAL.XLS'!マクロ名で拡張子がXLSとな
っていました。個人マクロでThisWorkbook.Workbook.Path はC:\Documents and
Settings\ユーザー名\ ApplicationData\Microsoft\Excel\XLSTART\PERSONAL.XLSBと
XLSBの拡張子が違っていて”B”を追加すれば作動することまでは分かったのですが、沢山
のブックがあり一つ一つは膨大な時間が掛かってしまい何か良い方法があれば教えてください。
以前、自作アドインで同じようなことをしました。 (本当は、簡単な方法があるのかも知れませんが)
アクティブなブックに対して、下記マクロを実行します。 マクロはPERSONAL.XLSBに置いてください。★の行は、実際に合わせて修正が必要です。
私の場合は、マクロをショートカット登録し、必要なブックのみ、その都度、実行していました。 指定フォルダ内の全ブックについて、順番に実行することも工夫次第では?
ChangeLinkとかLinkSourcesについては、ヘルプ等で調べてください。 コードの意味が理解できると思います。
Sub Convert_Link20121213() Dim myLnks, lnk Const oldLnk As String = "C:\*******\******\PERSONAL.XLS" '★
myLnks = ActiveWorkbook.LinkSources(xlExcelLinks) If IsEmpty(myLnks) Then Exit Sub
For Each lnk In myLnks If lnk = oldLnk Then ActiveWorkbook.ChangeLink _ Name:=oldLnk, NewName:=ThisWorkbook.FullName, _ Type:=xlExcelLinks End If Next
End Sub
時間がないので、動作確認せずアップしています。問題あれば今晩修正します。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.