• 締切済み

エクセルVBAの値貼り付けについて

いつもお世話になっております。 エクセルVBAについての質問ですが 以下のコードを使用するとどうしても元の書式の貼り付けになってします。 値(テキスト)貼り付けを実行したいのですがどこのコードをどのように変えればいいか教えてください。 ------------------------------------------------------------------------------------------- Sub IE_Open_Copy() Dim objIE As Object Const OLECMDID_SELECTALL = 17 Const OLECMDID_COPY = 12 Const OLECMDEXECOPT_DODEFAULT = 0 Const URL As String = "https://okwave.jp/question/" Set objIE = CreateObject("InternetExplorer.Application") With objIE .Visible = True .Navigate URL Do While .Busy DoEvents Loop Do Until .ReadyState = 4 DoEvents Loop .ExecWB OLECMDID_SELECTALL, OLECMDEXECOPT_DODEFAULT .ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT Application.Wait Now() + TimeValue("00:00:05") .Quit End With AppActivate Application.Caption, True Range("A1").Select Application.Wait Now() + TimeValue("00:00:05") Application.SendKeys "^v" Set objIE = Nothing End Sub ---------------------------------------------------------------------------------------------

みんなの回答

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.3

期待していることを私が正しく理解しているかどうか 少々不安がありますが... Application.SendKeys "^v" ↑を↓に置き換えることで ActiveSheet.PasteSpecial Format:="テキスト", _     link:=False, DisplayAsIcon:=False テキストだけがクリップボードから張り付くと思います。

noname#232800
noname#232800
回答No.2

あ、分かった。 Range("A1").Select がペアレント指定してない。

noname#232800
noname#232800
回答No.1

objIE.Wait Now() + TimeValue("00:00:05") ってやる。

kawasaki5089
質問者

補足

回答ありがとうございます。 2つあるApplication.Wait Now() + TimeValue("00:00:05")を objIE.Wait Now() + TimeValue("00:00:05")に変えてみたら 「オブジェクトは、このプロパティまたはメソッドをサポートしておりません」と表示され実行できませんでした。

関連するQ&A

専門家に質問してみよう