アプリ版:「スタンプのみでお礼する」機能のリリースについて

ExcelVBAに関する質問です。
引数にURLの文字列を設定すると、そのページをWebクエリを使用し、所定のシートに書き出すプログラムを作っています。
新たなWebクエリを取得する際に、以前のQueryTableを消す為に「QueryTable.Delete」を使っているのですが、これだとQueryTableが無い場合、エラーになってしまいます。
そのシートにQueryTableがあるかどうかをブール型で取得できれば制御文で回避できると思うのですが、取得方法はありますか?
それが無い場合は、エラーが出ても止まらない様にする方法もあるとは思いますが、それによって不具合は無いのでしょうか?
また、別の方法もあるのであれば教えてください。

A 回答 (1件)

Countプロパティで確認できませんか?



if ActiveSheet.QueryTables.Count <> 0 then
msgbox "あり"


'-----------------------------------------
QueryTablesが、0~複数の場合の確認&Delete
'-----------------------------------------
Sub Test()
 Dim Q As QueryTable
 
 MsgBox ActiveSheet.QueryTables.Count
 
 For Each Q In ActiveSheet.QueryTables
   MsgBox Q.Name & vbLf & Q.ResultRange.Address
   Q.Delete
 Next Q

End Sub
'-------------------------------------------

外しましたらご容赦!
以上です。
    • good
    • 0
この回答へのお礼

出来ました。ありがとうございます。

お礼日時:2009/09/04 06:25

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