初心者です。参考書に沿ってVBAの勉強をしています。
Sub test()
ThisWorkbook.Worksheets("Sheet1").Cells(1.1)="VBA"
Next i
End Sub
こちらを標準モジュール内に書き込んだところ題名のようなエラーが発生しました。
VBAに慣れている方に相談したのですが、その方もわからないようなのでこちらに質問させていただきました。
シートの名前は正しいはずです(初期から変更していません)
アドバイスお願いします
No.2ベストアンサー
- 回答日時:
こんばんは。
答えは、#1さんの回答自体は、完璧だと思います。
しかし、
>「実行時エラー424、オブジェクトが必要です」
ということで、ミスタイプ自体は直したとします。
(添付画像 参照)
私も、VBAは、10年以上やっていて、それ相応に分かっているつもりでしたが、ご質問内容では、同じく分かりません。親オブジェクトから書く方法を、コンテナ型といいますが、その時に、実行時エラー '424'として発生するのは、親オブジェクトが見つからない場合だけです。
しかし、Excelでそのような現象になるとのは、今のところ思いつかないのです。
http://officetanaka.net/Excel/vba/error/executio …
このリンク先とは違うように思います。
原因のひとつとして考えられるのは、まず、アプリケーションそのものが違っているというとこです。ThisWorkbook が違っている場合です。つまり、Wordなどの別のVBAで実行しようとしていると考えられます。Excelだとすると、今は、原因を思いつきません。今までも、初心者の方のご質問は、非常に難問なものが多いような気がします。
以下はWordの標準モジュールで実行した場合です。なお、Cells(1.1) は、小数点以下が丸められますので、Cells(1)の意味ですが、Cells(1.5)は、2になって、B1を意味します。もしA1,A2 と書くのなら、カンマを入れて、Cells(1,1) Cells(2,1) と書くようにします。
No.1
- 回答日時:
こんにちは。
コードを拝見しましたが、まず、「i」の型を宣言しなければいけません。
また Cells(行,列)は「,」で区切る必要があります。
この場合、Next i とは For ...Next のように繰り返す動作をさせたいのでしょうか。
例えば、セルの「A1」から「A5」まで下方向に「VBA」と繰り返し5回入力させるとします。
Sub test()
Dim i As Integer
For i = 1 To 5
Sheets("Sheet1").Cells(i,1) = "VBA"
Next i
End Sub
ご質問に対する回答はこのようなものでよろしかったでしょうか。
検討違いでしたら、申し訳ございません。
ご確認ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA*セルに値があればシート名に反映 2 2023/02/21 14:52
- Visual Basic(VBA) 複数シートの複数列に入力されているデータを重複なしで抽出するVBAを作りたいです。 9 2022/06/17 10:33
- Visual Basic(VBA) Sheet1のA列にコードB列にメアド、Sheet2のB列にコード一覧とD列にメアド一覧があり、Sh 3 2022/10/19 11:57
- Excel(エクセル) VBAのエラーが直せません 4 2023/06/12 22:10
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Excel(エクセル) なぜExit Subがあるのかわかりません 4 2023/02/19 12:34
- Visual Basic(VBA) EXCELのVBAについて 2 2023/07/05 17:17
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
セルのコピーで「オブジェクトが必要です。」
Visual Basic(VBA)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
VBA たまに変数がempty値になるエラー
Excel(エクセル)
-
-
4
実行エラー'424' ????
Excel(エクセル)
-
5
Access 別フォームへの再クエリ(更新)がしたい。
その他(データベース)
-
6
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
7
特定のPCだけ動作しないVBAマクロがあります。その理由は?
Visual Basic(VBA)
-
8
Accessを開きなおすとテキストボックスの値がエラー#Name?になる
その他(データベース)
-
9
Access VBAで行ラベルが定義されていないというエラーが出ます
Access(アクセス)
-
10
VBscriptが起動しない?
Microsoft ASP
-
11
Acccessで2つのテーブルから1つのフォームをつくりたい
Access(アクセス)
-
12
ファイルのアクセス回数について
Access(アクセス)
-
13
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
14
EXCELファイルに誰がアクセスしたかを見たい
Access(アクセス)
-
15
VBA 見つからなかった時の処理
Excel(エクセル)
-
16
「選択範囲を解除してアクティブセルを選択」をマクロで行うにはどうすればよいでしょうか
Excel(エクセル)
-
17
「メソッドまたはデータメンバが見つかりません。」というエラーが出ます。
その他(データベース)
-
18
VBAのエラーについて、”実行時エラー424オブジェクトが必要です”
Excel(エクセル)
-
19
Excel VBA オブジェクトが必要です (エラー 424)の解決策
Visual Basic(VBA)
-
20
VBAでの Replace関数で、ワイルドカードは使えないのでしょうか?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
ACCESSのFieldの追加方法
-
python __del__()に関して
-
UserForm1.Showでエラーになり...
-
実行時エラー 3265「要求された...
-
パワーポイント filedialogでフ...
-
ドロップダウンリストの行を増...
-
VBA オブジェクトが空かどうか...
-
オブジェクト変数またはWITHブ...
-
テキストボックス中の文字列の...
-
VBScriptでCSVファイルのデータ...
-
VBS 指定のフォルダ内の最新の...
-
エクセルVBAでテキストボックス...
-
textBox isNot Nothing とは
-
PowerPointVBAでスライドマスタ...
-
VBScriptでファイルの日時順(降...
-
VBAによるコメントの余白設定
-
VBA プロパティについて
-
VBでPDFファイルを編集する
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
実行時エラー 3265「要求された...
-
エクセルのVBAの標準モジュール...
-
VBAで既に開いている別アプリケ...
-
VBAで Set wb = Sheets(1).Cop...
-
テキストボックス中の文字列の...
-
PowerPointVBAでスライドマスタ...
-
エクセルマクロエラー「'Cells'...
-
VBAからPDFファイルにパスワー...
-
Excelでフィルタをかけると警告...
-
オブジェクトが見つかりません
-
ある文字列が全て数字であるか...
-
EXCEL VBA オートシェイプナン...
-
[VBA]CDOメッセージ送信エラー
-
VBAで作成するメール(開封確認...
-
VBAについてです。 初心者です...
-
VBA:オートシェイプの線の長...
-
VBで引数にDictionaryオブジェ...
-
AccessVBAで「dim dbs as datab...
おすすめ情報