goo blog サービス終了のお知らせ 

半角チルダ

ExcelVBA、その他。
覚え書きや、補足資料などのスクラップブック。
end-u(1037781)

■xl2003:QueryTables.Deleteと.Names().Delete

2009-08-22 20:00:00 | 雑記
はぁ...また懺悔になってしまうのでしょうか。
最近、メイン環境が[win2000/xl2000]から[winXP/xl2003]に変わってしまった事もあって気づいたんですが、
結論から言うとxl2003sp3ではQueryTables.Deleteすると[名前定義]も削除されます。
■QueryTables.Add/.Deleteと.Names().Deleteの記事アップ当時、xl2003も社内にあったので検証したような記憶があるんですけどね。(その時sp3だったかどうかまでは憶えてません)
また嘘つきになっちゃうのかぁと落ち込んだのですが、たまたまspがあたってない2003があって、そちらで実行すると依然、名前定義が残ります。当時はsp3ではなかったのでしょう、多分
どのUpdateで変更されたのかわかりませんが、少なくとも2003のsp3では改善されているようです。
(ちなみに2000sp3は変わらず)
VBEのマウスホイールの件や、このQueryTableのName問題など、sp3で色々と改善されたのは良いンですけど、何が改善されたかもうちょっと情報が欲しいところです...よねぇ
ここからOffice2003_SP3Changes.xls落として見たけど見つけられなかった...英語だし。

一応、確認用コード。
Option Explicit

Sub test2003sp3()
  Dim s As String
  Dim i As Long

  s = "http://blog.goo.ne.jp/end-u"
  With Sheets.Add
    For i = 1 To 5
      .UsedRange.ClearContents
      With .QueryTables.Add(Connection:="URL;" & s, _
                 Destination:=.Range("A1"))
        .RefreshStyle = xlOverwriteCells
        .AdjustColumnWidth = False
        .WebFormatting = xlWebFormattingNone
        .Refresh BackgroundQuery:=False
        Debug.Print .Name
        .Delete
      End With
    Next
    MsgBox "Query:= " & .QueryTables.Count & vbLf & _
        "Name:= " & .Names.Count
  End With
End Sub



(2009.09.14追記)
#Office2003_SP3Changes.xls というのは上記リンク先
#http://support.microsoft.com/kb/923618/ja
#からダウンロードできる『Office 2003 SP3 で修正される Office 2003 Service Pack 2 以降の問題の一覧が掲載された Microsoft Excel ブック』の事です。(英語版のみ)

Comment    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ■xl2007:散布図グラフ | TOP | ■WebQueryの失敗(その後の後 »
最新の画像もっと見る

post a comment

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。
ブログ作成者から承認されるまでコメントは反映されません。

Recent Entries | 雑記