(26)シートに残っていた「クエリ関連リンク」を削除する
Excel2007では問題なかったが、Excel2010以降ではデータ接続ブロックのメッセージが出る件(2015/09/05)

Excel2003及び2007では問題なかったが、Excel2010ではブックを開くと下図のメッセージが表示される。
下図表示の問題発生ツールは、tp01、tp13、tp14、tp15の4点及び付録のtp02〜tp10の8件です。

【図1:セキュリティメッセージ】



[原因]
非表示にしてある、ToushoNoシート、個別登録シート、指標シートに昔データ取得に使用したWebクエリへの
リンク付けが残っていたことが悪さの原因で、このリンクは見ることが出来ないが、Excel2010では外部との
データ接続としてセキュリティ上の問題として表示されるようになりました。実際はクエリで取得のデータはない
ので「有効にする」または「無効にす」のどちらを指定してもマクロの実行には問題ありません。

[改善策]
下記のクエリ残骸削除のプロシージャを実行で、不要の外部接続は無くなります。
Sub クエリ削除()
Dim i As Integer, j As Integer, mydat As String, qt As QueryTable
 
For i = 1 To Worksheets.Count
    mydat = Worksheets(i).Name
 
クエリテーブル削除
            Worksheets(mydat).Select
        For Each qt In ActiveSheet.QueryTables
            qt.Delete
            j = j + 1
        Next
Next
    MsgBox "ファイル名「" & ActiveWorkbook.Name & "」の" & Chr(10) & _
    "「" & i - 1 & "」個のシートから 「" & j & "」個のクエリテーブルを削除しました。"
End Sub

●上記マクロを処理対象ツールのマクロシートに貼り付けて、非表示ブックを表示にしてから実行のこと。
●各ツールに貼り付けるのは面倒なので、このマクロの入ったファイルを作成し、そのファイルを開く方式が
  簡単なので、新規作成ブックを作り、(ファイル名例:クエリ削除.xls)標準モジュールに上記を貼り付け、
  そのマクロを実行する方式が以下の改善実行手順になっていおます。

[改善実行手順]
@改善対象のブックを開く
ブックを開くと図1メッセージが出て進行がストップするが、「有効」又は「無効」をクリックして、下記図2のリボン
を表示まで進行させる。1度のクリックでアドインが表示されな場合は再度クリックで正常に開きました。

【図2:通常のリボン表示】


A非表示のシートを表示させる
・図2の「表示」→「再表示」で図3のダイアログは表示されるので、表示にするブックを選択してクリック。
・図4のように非表示だったシートが表示される。

【図3:ウインドウの再表示ダイアログ



【図4:表示にしたシート例



Bクエリ削除.xls を開く
・図4のウインドウの右上隅の最小化「-」バーをクリック
・事前に作成し保存してあるクエリ削除マクロの入っているファイル(本例:クエリ削除.xls)を開く(図5参照)

【図5:クエリ削除.xlsの入っているフォルダを表示した例】



Cクエリ削除マクロを実行
・クエリ削除マクロの入っているファイル(本例:クエリ削除.xls)を開くとそのファイルがアクティブになっているので
 右上隅上から2段目のウインドウの最小化「-」バークリックでアイコンにする。その後最初に開いた、処理対処
 のファイルのアイコンの最大化をクリックして、処理対象ファイルをアクティブにする。
・リボンバーの「開発」→「マクロ」クリックでマクロダイアログ(図6参照)を表示する。
・クエリ削除マクロを選択
・「実行」クリック

【図6:マクロダイアログ表示例】


D実行結果のダイアログ表示例
修正完了で終了ダイアログが表示されます。(図7・図8は2ツールの終了例)

【図7:tp01-ダウンロード(Yahoo).xlsを修正完了例】


【図8:tp13-多数を1ツールで解析.xlsを修正完了例】



[他のツールの改善例]
手順は「tp01-ダウンロード(Yahoo)」例の説明ですが、tp13、tp14、tp15も同じ方法で実行できます。
付録のtp02〜tp10の8件も同じ方法でできますが、8回同じ事を行うのは面倒なので、tp10-一目均衡表.xls を
実行して、他のツールは修正済みの「指標シート」シートの左上隅(行番号1の上)をクリック
してシート全体をコピーして、別のツールへ貼り付けて下さい。
(指標シートはツール毎に内容が異っていたが、tp10のシートは全ツールをカバーした内容になっています)

ただし別シートの方は、シートの左上隅(行番号1の上)をクリックで全体を選択後、1度「Delete」キーを押して
データを削除してから改善済みを貼り付ける。未消去で貼り付けた場合は肝心の残クエリは消えません。
●tp3〜TP9はこの方法で貼り付ければOKです。tp02についてはSheet1及びTouhoNoシートを表示して前述の方法で行う。


【図9:「Delete」キーを押すと表示のダイアログ例】
「Delete」キーを押すと「削除したデータ範囲は、外部ソースからデータを取り出すクエリに関連付けられています。
データ範囲と共にクエリも削除しますか?[いいえ]をクリックした場合は、次にクエリを更新すると、新しいデータ
がワークシートに表示されます。」のメッセージが出るので、もちろん「はい」でクエリを削除する。


【ホーム】   【戻る】