質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

1回答

9188閲覧

[VBA][JavaScript] 入力した文字が確定されません

xxx_XXX_xxx

総合スコア15

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2016/06/28 01:53

[VBA][JavaScript] フォームに入力した文字が消えます。

VBAでIEを操作し、WordPressのフォームの自動入力処理をしています。
Yoast SEOの入力で詰まってしまっています。

Discriptionに文字を入れたいのですが、更新をするとデータが反映されず初期状態になってしまいます。

VBA

1IE.document.getElementById("snippet_meta").FireEvent ("onblur")

で、内容が確定されるかと思ったのですが、なりません。
blurでイベントが起きると思ったのですが・・・onChangeもだめでした。
Send keysも試しましたが、うまくいきません。
お手上げ状態です。
こういう場合はどのようにしたら良いのでしょう。
ご存知の方がいらっしゃいましたらご教授下さい。

Yoast SEO バージョン 3.0.7

html

1<span class="desc desc-default" id="snippet_meta" contenteditable="true">Modify your meta description by editing it right here</span>

VBA

VBA

1 Set IE = CreateObject("InternetExplorer.Application") 2 IE.Visible = True 3 IE.navigate url 4 5 Call ieRedy(document, IE) 6 7IE.document.getElementById("snippet_meta").Click 8 Call wait2sec 9 IE.document.getElementById("snippet_meta").Focus 10 Call wait2sec 11 With New MSForms.DataObject 12 .SetText Cells(i, 19).Value 13 .PutInClipboard 14 End With 15 Call wait2sec 16 SendKeys "^v" 17 'IE.document.getElementById("snippet_meta").innerText = WSList.Cells(i, 19).Value 18 'IE.document.getElementById("snippet_meta").FireEvent ("onblur")

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/06/28 03:12

>更新をすると これは入力後にブラウザの更新をしたらということでしょうか? また、手動で入力し「更新」した場合は初期状態にならないですか?
xxx_XXX_xxx

2016/06/28 03:35

更新ボタン(記事を公開する/Submit)を押したら、ということです。 または、他の箇所をクリックすると消えてしまいます。 手動で入力すると、きちんと反映されるのですが。
guest

回答1

0

IE.document.getElementById("snippet_meta").Focus

これを下記のようにしてはどうでしょうか?
javascriptでは下記のようにすればフォーカスが当たりましたが、上記では当りませんでした。

IE.document.getElementById("snippet_meta").focus()

投稿2016/06/28 09:27

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xxx_XXX_xxx

2016/06/28 10:43

ご回答ありがとうございます。 申し訳ありません、VBAでJavaScriptを操作したいのです。 上記のコードもVBAのものです。
退会済みユーザー

退会済みユーザー

2016/06/29 00:52

WordPressが手元にないのでGoogleサイトで上記ソースを試してみました。 SendKyesでも、innerTextへの入力もどちらも動作しました。 navigate後にサイトの描画が終わる前に処理が走っているということはないでしょうか? おそらく「Call ieRedy(document, IE)」が描画待ちだとは思うのですが。 もしくは、hiddenに入力したかどうかの情報などはないでしょうか? 例えば、下記のようにしてソースを比べて見てはどうでしょう。 ①手動で入力する ②入力前と入力の後でソースを比較して変わっている箇所を探す
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問