- 締切済み
エクセル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 ---------------------------------------------------------------------------------------------
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- HohoPapa
- ベストアンサー率65% (455/693)
期待していることを私が正しく理解しているかどうか 少々不安がありますが... Application.SendKeys "^v" ↑を↓に置き換えることで ActiveSheet.PasteSpecial Format:="テキスト", _ link:=False, DisplayAsIcon:=False テキストだけがクリップボードから張り付くと思います。
あ、分かった。 Range("A1").Select がペアレント指定してない。
objIE.Wait Now() + TimeValue("00:00:05") ってやる。
補足
回答ありがとうございます。 2つあるApplication.Wait Now() + TimeValue("00:00:05")を objIE.Wait Now() + TimeValue("00:00:05")に変えてみたら 「オブジェクトは、このプロパティまたはメソッドをサポートしておりません」と表示され実行できませんでした。