VBレスキュー(花ちゃん)
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ各掲示板

メニューへ戻ります。 Excel・Word・VBA関係のメニュー
1.VB2013 から Excel 2013 を操作する為の基本的な操作方法
2.Excel 操作ワンポイントテクニック集その1
3.Excel 操作ワンポイントテクニック集その2
4.VB2013から Excel にデータを送りグラフを表示する
5.Excel のグラフをクリップボード経由で PictureBox に貼付
6.Excel 2013 の WEB クエリを VB2013 から操作する
7.
8.
9.
10.
11.VB2013から Word の起動・終了処理及び文字の書き込み例
12.Wordの差し込み印刷機能を使って宛て名ラベルを印刷
13.
20.その他、当サイト内に掲載のExcel・Word・VBAに関するサンプル


6.Excel 2013 の WEB クエリを VB2013 から操作する(09_Xls_11) (旧、SampleNo.451)
1.Excel 2013 の WEB クエリを VB2013 から操作する
2.
3.
4.
5.
6.

 ※ 起動及び終了処理及び使用関数等の記載が漏れていたらExcel 操作ワンポイントテクニック集その1(09_Xls_02)の方をご覧下さい。

 下記プログラムコードに関する補足・注意事項 
動作確認:Windows 7 (32bit)/VB2010(SP1Rel) Framework 4.0(SP1Rel)/ターゲットCPU:x86 Excel 2013
Option :[Compare Text] [Explicit On] [Infer On] [Strict On]
Imports :Microsoft.Office.Interop /
参照設定:
Microsoft Excel 15.0 Object Library / WaitTime.dll     参照設定方法参照
使用コン:Button1
トロール:別途、Excel の起動及び終了処理をこちらを参考にして作成しておいて下さい。
このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので)
必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい)
このページのトップへ移動します。 1.Excel 2010 の WEB クエリを操作し WEB 上の表データを取得する
エクセルの Web クエリ(メニューのデータ→Web クエリ)を VB2013 上から操作して、Web 上のHTMLファイル内の表データを取得してみました。
取得したデータは、エクセル上に表示するようにしております。
こちらのサンプルは、Web クエリを使って簡単に WEB 上の表データが取得できるという見本で、実使用には、09_Xls_12 のサンプルを使って下さい。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  Call ExcelOpen("", "")   '新規ファイルをオープンして、Excel を起動
  '=============================================================================

'下記、気象庁の東近江市の本日のアメダス(表形式)のデータを取得
'http://www.jma.go.jp/jp/amedas_h/today-60196.html?groupCode=43&areaCode=000

'================== Webクエリ機能を使ってデータの取り込み ================== 
  '取り込んだデータの表示開始位置を指定
  Dim xlRange As Excel.Range = xlSheet.Range("A1")
  '取り込み先のデータファイルの URL 又は、パス
  Dim filePath As String = "URL;" & TextBox1.Text '上記 URL が記載してあります。
  Dim xlQTs As Excel.QueryTables = xlSheet.QueryTables
  '指定の htm ファイルのクエリテーブルを新規作成
  Dim xlQT As Excel.QueryTable = xlQTs.Add(Connection:=filePath, Destination:=xlRange)
  'テーブル作成時の条件を設定(別途、ヘルプ又は、下記資料をご覧ください)
  'http://msdn.microsoft.com/ja-jp/library/microsoft.office.interop.excel._querytable_members(office.11).aspx
  With xlQT
    .PreserveFormatting = True     '最初の 5 行の共通の書式がデータの新しい行に適用
    ' "" の場合すべてのデータを取得
    If TextBox2.Text.Length > 0 Then
      '現時点では、6 のテーブルを取得する事になっていますが、サイトの変更で変わる場合があります。
      .WebTables = TextBox2.Text   '該当のテーブル("4,5" のような指定も可)
    End If
    .Refresh(BackgroundQuery:=False)  'QueryTable を更新します
  End With
  xlApp.Visible = True  'Excelを表示(必ずとも表示しなくてもよい)

  '使用した Com オブジェクトの解放処理
  MRComObject(xlRange)
  MRComObject(xlQT)
  MRComObject(xlQTs)
'========================================================================================

  '確認のため5秒間表示(実使用時は、必要なし)
  WT.WaitTime(5000)
  '=============================================================================
  'Excelファイルを上書き保存(True 又省略すれば)して終了処理を実行
  Call ExcelClose(IO.Path.GetFullPath(".\Test.xlsx"), True) 'False の場合保存しないで終了
  'Excel.EXE がタスクマネージャーに残っていないか調査(実使用時は必要なし)
  WT.WaitTime(1000)
  Call ProcessCheck()
End Sub


 図1.上記実行結果(テーブル番号 5,6 を取得)
 vb2005excel04_01

このページのトップへ移動します。 2.


このページのトップへ移動します。 3.


このページのトップへ移動します。 4.


このページのトップへ移動します。 5.


このページのトップへ移動します。 6.


このページのトップへ移動します。 検索キーワード及びサンプルコードの別名(機能名)
WEB 上の表データを取得 Excel 2010 の WEBクエリ  エクセル HTML 表データ




このページのトップへ移動します。