
お世話になっております。
VBSでテキスト(文字列)の一部を切り出したいのですが、Visual basicのやり方だとエラーが出てしまいます。
つまり、Mid関数を使ったらエラーが出て、対処がわかりません。
以下に具体的なものを示します。
インターネットホームページの中からテキストを取得して、そのテキストから一部分を切り出したいのです。
例えば切り出したテキストが「赤1、青2、黄3」だとします。色名+数字、色名+数字、色名+数字というテキストです。色名を指定して、その次の数字を切り出したいのです。最終的には切り出した数字をc:\textfile.txtに保存しようとしております。
Dim IE
dim price
Set IE = WScript.CreateObject("InternetExplorer.Application")
IE.Navigate ("http://hoomupeeji")
While IE.busy: Wend
While IE.Document.readyState <> "complete": Wend
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("C:\textfile.txt", True)
For Each r In IE.Document.All.tags("TABLE")(3).rows
For Each c In r.Cells
a.Write (Replace(c.innerText, vbCrLf, ","))
Next
Next
price = Mid(a, InStr(price, "赤") , 1)
a.Write (price)
a.Close
IE.quit
どうぞよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
>price = Mid(a, InStr(price, "赤") , 1)
の「a」は、ファイルであって、文字列ではありません。
ありがとうございます。
>> price = Mid(a, InStr(price, "赤") , 1)
> の「a」は、ファイルであって、文字列ではありません。
このaファイルの記述をaファイルのテキストと直せばよいのではないかと思いました。もしその方向で正しければ、どのようにすればよいのでしょうか。
No.2
- 回答日時:
まず、c.innerText で取り出した文字列が、
期待しているように
"赤1,青2,黄3"のようになっているかどうかを確認しましょう。
str = c.innerTextとかして、
いったん変数に入れます。
str = "赤1,青2,黄3"
の時
price=mid(str,instr(1,str,"青",1)+1,1)
で price は"2"になります。
私は、テーブルの数も内容も知りませんし、
またファイルに書き出す処理の意味も知りませんので、
方向が正しいかどうかは知りません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- PostgreSQL 数値が定期的にあらわれる文字列から、いくつめに出現した数値が指定して切り出したい 1 2023/06/08 13:12
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Visual Basic(VBA) セルの値からファイルを複数作りたい2 3 2022/10/07 15:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のアプリケーションのテキス...
-
変数に256文字以上のテキストを...
-
MFCのスタティックテキストのコ...
-
POIでのテキストボックス作成に...
-
配列で呼び出しMCやボタンにしたい
-
marqueeを入れるとaltテキストが
-
HTMLのtextbox類に文字を残す
-
VBAからPDFのテキストフィールド
-
VS2008 C# ボタンのテキストを...
-
外部ファイルから取得したデー...
-
エクセルの図形挿入のVBAにて
-
テキストボックスの中身をリセ...
-
アクセスVBAで、フォームに...
-
adobe flashでボタンの上のテキ...
-
公式テキストExcelVBA...
-
アクセスのフォームから検索を...
-
動くボタンでリンク
-
記述をまとめたい
-
読み込んだ外部テキストのHTML...
-
【ActionScript】コンボボック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスの中身をリセ...
-
全てのテキストボックスをセル...
-
変数に256文字以上のテキストを...
-
テキストボックスにセルの値を...
-
漢字入力した値のカタカナ変換...
-
フォームのテキストの入力数字...
-
DelphiのRichEditでカーソル位...
-
VB6.0 でメニューを作りたいん...
-
'2465'指定した式で参照してい...
-
エディットボックス内での追記
-
テキストエリア内の文字列にリ...
-
SWFからHTML読みこみ
-
別のアプリケーションのテキス...
-
ボタンのクリックカウントでフ...
-
VB.NETで数十行のプログラムを...
-
Flashで恋愛ゲームを作りたいの...
-
フレームアクションで色の変更...
-
macromedia Flash WEBサイトで...
-
テキストフィールドにスクロー...
-
metaタグのdescription
おすすめ情報