![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
以前、こちらでインターネット上の窓にエクセルの数値を自動で入れたいと言う質問をさせて頂きました。http://oshiete.goo.ne.jp/qa/7676012.html
VBAを利用したらどうかと教えていただき、マクロをその後、勉強し動いて感動しました。
クロネコの宅急便サイトで応用しようと試みたのですが、「オブジェクト変数またはWithブロック変数が設定されてません。」とエラーが出ます。
同じ仕組みだと思うのですが何がいけないんでしょうか?
Dim myWindow As Object
Dim myUrl As String
myUrl = "http://toi.kuronekoyamato.co.jp/cgi-bin/tneko?init
For Each myWindow In CreateObject("Shell.Application").Windows
With myWindow
If .LocationURL = myUrl Then
.document.getElementById("text1").value = Range("A1").value
.document.getElementById("text2").value = Range("A2").value
.document.getElementById("text3").value = Range("A3").value
.document.getElementById("text4").value = Range("A4").value
.document.getElementById("text5").value = Range("A5").value
Exit For
End If
End With
Next myWindow
No.4ベストアンサー
- 回答日時:
既にki-aaaさんが回答されていますがソースを見なければいけません。
入力欄のソースは
<input name="number01" size="20" maxlength="14">
というようになっています。
ID属性は設定されていないのでgetElementByIdは使えません。
Name属性を手掛かりに
(例1)
.document.getelementsbytagname("input").number03.value = Range("A1").value
(例2)
.all.tags("input").number01.value = Range("A1").value
(例3)
.document.all("number01").value = Range("A1").value
(例4)
.document.all.number01.value = Range("A1").value
等と書くことができます。
ありがとうございます!
下記にて希望の動作が出来ました!
Dim myWindow As Object
Dim myUrl As String
myUrl = "http://toi.kuronekoyamato.co.jp/cgi-bin/tneko?in …
For Each myWindow In CreateObject("Shell.Application").Windows
With myWindow
If .LocationURL = myUrl Then
.document.all.number01.Value = Range("A1").Value
.document.all.number02.Value = Range("A2").Value
.document.all.number03.Value = Range("A3").Value
.document.all.number04.Value = Range("A4").Value
.document.all.number05.Value = Range("A5").Value
Exit For
End If
End With
Next myWindow
今回はそのHPのソースを見て判断すると言う事を学習させてもらいました。
色々な書き方があるようですが、何がどう違うのか勉強不足でわかりませんが、色々といじりながらまた勉強させて頂きます。
普通は投げ出すところを救っていただき本当にありがとうございます!
No.3
- 回答日時:
こんにちわ
似ているようなサイトだからといって、まったく同じではありません。
そのときは、ツールバーから 表示 ソースを押してコードをみます。
'<input name="text1" id="text1" size="50" onkeyup="showLength(value,id);" type="text">
'<input name="number01" size="20" maxlength="14">
text1をnumber01に変えます。
大変ありがとうございます。
ページのソースを見て input name を探すのですね!
そしてそれに準じて書き換えていくのですね。
目からウロコです。
ありがとうございます!
No.1
- 回答日時:
こんにちは。
>同じ仕組みだと思うのですが何がいけないんでしょうか?
はっきり分かりませんが、ただ、私もしますが、手抜きのコードだと思います。
それはどこかというと、
>CreateObject("Shell.Application").Windows
この部分です。環境の差にもよるのだと思いますが、ここで、オブジェクトが生成されないのだと思います。そういうエラーが出たら、以下のようにしてみたらいかがですか?
例:
Dim myShell As Object
Dim myWindow As Object
Dim myUrl As String
myUrl = "http://toi.kuronekoyamato.co.jp/cgi-bin/tneko?in …
Set myShell = CreateObject("Shell.Application")
For Each myWindow In myShell.Windows()
ありがとうございます!こうで宜しいでしょうか?
今度は「コンパイルエラー:参照が不正または不完全です。」と出ます。
Dim myWindow As Object
Dim myUrl As String
myUrl = "http://toi.kuronekoyamato.co.jp/cgi-bin/tneko?in …
Set myShell = CreateObject("Shell.Application")
For Each myWindow In myShell.Windows()
If .LocationURL = myUrl Then
.document.getElementById("text1").Value = Range("A1").Value
.document.getElementById("text2").Value = Range("A2").Value
.document.getElementById("text3").Value = Range("A3").Value
.document.getElementById("text4").Value = Range("A4").Value
.document.getElementById("text5").Value = Range("A5").Value
Exit For
End If
End With
Next myWindow
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) Excel VBAの解読について質問があります。 概要は、マクロでチェックボックスにチェックすると日 1 2023/02/10 07:50
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 4 2023/05/26 10:43
- Visual Basic(VBA) VBAのトグルボタンでのマクロについて質問です 3 2022/10/10 17:23
- Excel(エクセル) vba userformで漢字を全角カタカナに 2 2022/07/24 15:38
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語クイックソートの比較総回...
-
javascriptでhiddenに二次元配...
-
ラジオボタンの選択で解答・点...
-
クイズ作成:15個の問題から5個...
-
jQueryの戻り値がうまくいかな...
-
チェックボックスのグループ化...
-
ホームページビルダーVer6で、...
-
プルダウンで作文!?
-
チェックボックスやラジオボタ...
-
フォームの必須項目を埋めるま...
-
■int型の数値から数字文字への...
-
ラジオボタンとテキストを同時...
-
セルの色>何が足りないのでし...
-
onchangeイベントを強制的に発...
-
JavaScript ログアウト処理
-
ラジオボタン未チェックの場合...
-
Tablesorteを2行一組でソートする
-
テキストボックスの中身を選択...
-
テーブルの項目の値取得
-
セレクトメニューで選択された...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
value内に変数を入れたい
-
hiddenのvalueの値を変えたい
-
javascriptでhiddenに二次元配...
-
複数のsubmitボタンで押された...
-
テキストボックスに入力された...
-
switchを使って四則演算のプロ...
-
VB.NET DateTimeの型について
-
C言語クイックソートの比較総回...
-
クイズ作成:15個の問題から5個...
-
セレクトボックスの初期選択状...
-
ラジオボタンの選択で解答・点...
-
子から親へチェックボックスの...
-
ラジオボタンと連動して文字列...
-
setIntervalの間隔を途中で変更...
-
JAVASCRIPTで、ボタンを押した...
-
sessionStorageを調べています。
-
クリックの度に加算していくには?
-
マクロ オブジェクト変数With...
-
3桁区切りのカンマをつけたい...
-
selectboxのoptionタグのvalue...
おすすめ情報