- ベストアンサー
VBAでエクセルのセル範囲の値をIEのtextareaに貼り付ける方法
- エクセル2003を使用している場合、セル範囲("A1:J30")の値をIEのテキストエリア(textarea)に貼り付ける方法について教えてください。
- 質問者は異なる方法を試してみましたがうまくいかず、文字型変数にセル範囲の値を代入する方法が知りたいとしています。
- また、質問者は特定のテキストエリアに値を貼り付ける方法を示すコードも提供しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 比較的簡単な方法としては、 クリップボード→データオベジェクト経由で、 コピーした範囲全体のタブ区切りテキストを取得しておいてから、 doc_MyTable.Valueを設定するとか、、、。 Sub Re8747888() Dim ie As Object Dim doc_MyTable As Object Dim oDataObj As Object Dim wpfreeURL As String Dim s As String wpfreeURL = "http://www.tagindex.com/tool/excel_simple.html" Set ie = CreateObject("InternetExplorer.application") ie.Visible = True ie.Navigate2 wpfreeURL Do While ie.busy Or ie.readystate < 4 DoEvents ' Sleep (10) Loop Range("A1:J30").Copy Set oDataObj = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") 'New DataObject oDataObj.GetFromClipboard s = oDataObj.GetText oDataObj.Clear Set oDataObj = Nothing Application.CutCopyMode = False For Each doc_MyTable In ie.document.all.tags("textarea") If Trim(doc_MyTable.Name) = "data" Then doc_MyTable.Value = s Exit For End If Next End Sub みたいな感じでどうしょうか?
お礼
cj_mover さま こんちには! 早速のご回答ありがとうございました。 これです。これです。 クリップボードへのコピーがどうもイメージ通りにできなかったのですが、New DataObjectというのがあったのですね。 ありがとうございました! 今後ともよろしくお願いします。