• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA IEのiframe タグへ書き込み)

エクセルVBA IEのiframe タグへ書き込み

DOUGLAS_の回答

  • ベストアンサー
  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.3

#半月以上経っていますが、閉店していらっしゃらないので。。。  「"txt"」が合っているのでしたら、 oHTMLIFrame.document.all("txt").Value = "aaa" ではなくて oHTMLIFrame.document.all("txt")(0).Value = "aaa" みたいな感じでインデックスを入れるとどうでしょうか?  あるいは、 oHTMLIFrame.document.txt.Value = "aaa" oHTMLIFrame.document.txt(0).Value = "aaa" oHTMLIFrame.document.all.txt.Value = "aaa" oHTMLIFrame.document.all.txt(0).Value = "aaa" みたいな感じで、似た様な表記をいろいろといじくってみるとツナガルことがあります。

関連するQ&A

  • VBAで起動しているIEの操作

    IEでOKWAVEを開いていたら イミディエイトウィンドウに タイトルを表示するのに 次の 記述をしましたが エラーになりました。 実行時エラー '-2147467259 (80004005)': 'Document' メソッドは失敗しました: 'IWebBrowser2' オブジェクト なぜでしょうか? IEは11です。 エクセルは2013 OSは windows7 ホームプレミアム vbsは次の通り Sub okwave() Dim colSh As Object Dim win As Object Dim strTemp As String Dim objIE As Object Set colSh = CreateObject("Shell.Application") For Each win In colSh.Windows If TypeName(win.document) = "HTMLDocument" Then If InStr(win.document.Title, "okwave") > 0 Then Set objIE = win Exit For End If End If Next Debug.Print objIE.document.Title End Sub

  • エクセルVBAでの変数

    いつもお世話になります。 今回の『壁』は”変数”です。 変数の中に更に変数を持たせることはできますか? 何をしたいかと言いますと… dim mon1 as string dim mon2 as string dim mon3 as string dim mon4 as string dim mon5 as string dim tue1 as string dim tue2 as string …というように月曜から日曜までの頭3文字プラス1~5の組み合わせの変数を作りたいのですが、 この調子で作っていくと35コになってしまいます。 そこで、曜日の頭3文字より後ろは決まって1~5のため、 dim i as integer for i = 1 to 5 next i …と組み合わせられないかと思ったのです。 どなたか知恵をお貸しください。 よろしくお願いします。

  • ExcelのVBAでHTML内の特定のタグの出現回数を調べたい

    たとえばYahoo!JapanのサイトのHTMLのTDタグの出現回数を調べる場合 下記のVBAに何を付け加えればよいのでしょうか? Sub tagCount() Dim cnt As Integer Dim IE As Object Dim HTML As String Set IE = CreateObject("InternetExplorer.Application") IE.Navigate ("http://www.yahoo.co.jp/") While IE.busy: Wend While IE.Document.readyState <> "complete": Wend HTML = IE.Document.body.innerHTML IE.Quit 'td_count = ここの部分がわかりません。 '文字列の出現回数をカウントする関数はないのでしょうか? MsgBox td_count End Sub ご存知の方がおられましたらご回答をよろしくお願いします。 使用OS:Windows XP 使用ソフト:Microsoft Excel 2003

  • エクセルVBAでのIE操作について

    IEの中のフォームのデータセットに関してわからないところがあり、どうか力をお貸しください。よろしくお願いします。 Dim mo As Integer Dim atai As Integer Dim basyo As String For mo = 1 To 10 basyo = "form1" & Cells(7, mo) atai = Cells(9, mo) objie.Document.all.basyo.Value = atai Next のような感じにしたいのですが、どうしてもエラーがでてしまい、先にすすめず困っています。 ネットで探して試してはみたのですが、やはりエラーがでてしまいます・・ objie.Document.parentWindow.execScript "document.all." & basyo & ".Value = " & atai, "VBScript" 解決する上手い方法が知っている方がいましたら、よろしくお願いします。

  • youtube objectで×iframeで○?

    お忙しいところすみません、 youtubeの動画をホームページに埋め込んで表示する場合、 いくつか方法があると思うのですが、 Youtubeのホームページから動画の共有を選び 埋め込みコードから objectタグのコードと iframeのコードを 試してみたところ、 objectタグで行った場合は表示されず、 iframeタグで行った場合は表示されます。 Windows7で ブラウザはIE11です。 なぜでしょうか? <HTML> <HEAD><TITLE>動画埋め込みページ作成テスト</TITLE></HEAD> <BODY> ************************************** </BODY> </HTML> *************************の部分に埋め込みコードのタグを入力しました。 なぜ、objectタグの方は表示されないのか理由が分かりません、、、 もし、お分かりになりましたら、よろしくお願いいたします。

  • 【Excel_VBA】オブジェクト名の変数

    ExcelVBA(2007)でシートのオブジェクト名を変数で回したく、下記コードを用いたのですがエラーが出現します。 【コード】 Dim i As Integer For i = 1 To 10 Sheet & i.Activate Next i 【エラー内容】 コンパイルエラー: 修正候補:式 この場合、どのような方法を用いたらシートのオブジェクト名を変数でうまく回すことができるのか、ご教授いただければ助かります。 よろしくお願いします。

  • vbaマクロ 実行時エラー '91'について教えてください

    下記のマクロで、ファイル指定保存をする時に "実行時エラー91 オブジェクト変数またはWithブロック変数が設定されていません”がでます。 やりたいのは、選択したセルの1番目をファイル名として 保存をしたいのですが、うまくいきません。 どうしたらよいのでしょうか? Sub Macro1() Dim セル As Object Dim i As Long  i = 1  For Each セル In Selection   Worksheets("Sheet2").Cells(1, i).Value = セル     i = i + 1  Next ActiveWorkbook.SaveAs Filename:="D:\TEST\" & セル & ".xls" End Sub

  • VBAで関数を使うには?

    こんな感じだったとします。   A1      B1 2002/9/2 2002/9/3 2002/9/4 2002/9/5   : このB1にそれぞれの曜日を表示させるVBAを以下のようにしました。 Sub youbi() Dim i As Integer For i = 3 To 10 Cells(i, 3).Value = Weekday(Cells(i, 2), "aaa") Next End Sub もちろんエラーでした。 (メッセージは「型が一致しません」です。) そこで以下のように変更しました。 Sub youbi() Dim i As Integer For i = 3 To 10 Cells(i, 3).Value = "=text(Weekday(b3), ""aaa"")" Next End Sub するときちんと曜日が表示されたのですが、もちろん全部B3のセルの日付の曜日です。 ここを変数にするにはどうしたらいいのでしょうか? とっても簡単なことのように思えますが、意外とハマってしまって抜け出せません。 よろしくお願いします。

  • 複数のオブジェクトをループで処理したい場合

    以下のような処理をしたい場合 Dim objData1 As Object Dim objData2 As Object Dim objData3 As Object Dim objData4 As Object Dim i As Integer For i=0 to 4 ここでオブジェクトの1~4を順番に処理 Next 変数iをobjData[i]の様にしたいのですが どのようにすればいいのでしょうか?

  • Excel VBA Accessへデータ書き込み

    お世話になります。 Excel VBAを使用し、ExcelのデータをAccessのテーブル書き込みたいと思っています。 そこで、Access側のテーブルのインデックス重複なしの設定により、書き込むExcelデータが重複となるレコードの場合は、警告を非表示にして書き込みを飛ばしたいと思い、書籍等を参考にして下記のようなコードを記述したのですが、DoCmd.SetWarnings Falseに対してDoCmdの変数が定義されていませんと警告が出されます。 DoCmd.SetWarnings Falseを記述しないと実行時エラーが出されます。 対応方法をご教授頂けないでしょうか。 よろしくお願い致します。 Option Explicit Sub ExcelカレントExcelデータをAccessへ_重複除外_今村() Dim con As New ADODB.Connection Dim rs As New ADODB.Recordset Dim conStr As String Dim sqlList As Collection Set sqlList = New Collection 'コレクションを作成 Dim titleRow As Long Dim endRow As Long Dim tgtRow As Long '繰り返し用変数の宣言 Dim sql As Variant 'SQL文用変数の宣言 Dim i As Long 'For iステートメント用 Dim wbws As Object Dim Accessteble As String 'ExcelのWorkbook名+Sheet名を指定 Set wbws = Workbooks("テーブル取り込み1.xlsm").Sheets("Sheet2") 'Accessのテーブル名を指定 Accessteble = "T_Excelデータ追加" 'Excelタイトル行初期化★ titleRow = 9 'Excelデータ最終行取得 endRow = wbws.Cells(Rows.Count, 2).End(xlUp).Row 'SQL文リストの作成 'Excelデータ取得 For i = titleRow + 1 To endRow '指定行を繰り返す With wbws sql = _ "INSERT INTO " & Accessteble & "(" & _ .Cells(titleRow, 2).Value & ", " & _ .Cells(titleRow, 3).Value & ", " & _ .Cells(titleRow, 4).Value & ") " & _ "VALUES(" & _ "'" & .Cells(i, 2).Value & "', " & _ "'" & .Cells(i, 3).Value & "', " & _ .Cells(i, 4).Value & ");" End With 'コレクションへ追加 sqlList.Add sql Next i 'iを次の値にしてForへ戻る 'Access絶対パス指定 conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data " & _ "Source=C:\Users\○○\Desktop\注文管理.accdb" 'DB接続 con.Open ConnectionString:=conStr DoCmd.SetWarnings False '実行文 For Each sql In sqlList 'SQL文リストをループ con.Execute sql '1行ずつ取り出し実行 Next sql con.DoCmd.SetWarnings True con.Close: Set con = Nothing End Sub