Sheet1のA列に(A1からA365)に2005/4/1から1年間の日付があります。で、H5に今日の日付をいれます。で、I5にmatch(H5,A1:A65,0)といれると、きちんと値が戻ってきます。が、これをVBAで
Sub test()
mydate = range("H5").value
myrow = Application.WorksheetFunction.Match(mydate, Range("A1:A365"), 0)
End Sub
とすると、アプリケーション定義またはオブジェクト定義のエラーです。
と表示され、できません。
同じ事をしていると思うんですが、違いが分かりません。教えてください。
No.1ベストアンサー
- 回答日時:
>mydate = range("H5").value
mydate に、自動キャストしてはダメっていうことです。
mydate に、日付を入れると、Date 型になって、Match 関数の引数として受け入れてくれません。
簡単な処理としては、
やっぱり、基本的に、変数の型を宣言して、
Dim mydate As Long
としてください。
( = Clng(Range("H5").Value) という方法がないわけではありません。)
ただ、myrow が、エラーを抱えると、今度は、実行時エラーになりますから、On Error Resume にするか、Application.Match(... としてください。
私は、このような場合は、Application.Match にして、その戻り値の型を、Variant 型にし、戻り値が、エラーでない限り、実行するようにしています。
例:
If Not IsError(myrow) then
'実行...
Error トラップよりも便利です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Visual Basic(VBA) Worksheets メソッドは失敗しました。のエラー処理のやり方 4 2022/05/29 21:29
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Excel(エクセル) Excleマクロ セル値の代入と文字列の結合について 3 2022/10/05 16:47
- Excel(エクセル) エクセル 値をコピペした時に、条件付き書式で塗られた背景色もペーストさせる 2 2023/04/05 17:21
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
実行時エラー3001「引数が間違...
-
ExcelVBA Range クラスの Page...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAでのエラー
-
VB6+SQL サーバー 2000 で 実行...
-
VBAがブレークモードになっ...
-
EXCEL/VBAで、自分のPCだけエラ...
-
実行時エラー48発生時のDLL特定...
-
VBS シートをコピーして別のブ...
-
UWSCのビジー待ちで60秒経った...
-
SQL文をVBAで流すと「型...
-
Application.ActiveInspectorで...
-
AccessVBAでExcelを起動し、罫...
-
ACCESSのエラーで困っています
-
マクロについて教えてください...
-
職場から目的地までの距離集計
-
'Speak'メソッドは失敗しました
-
アクセス 実行時エラー3265
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
【Excel VBA】マクロをボタンに...
-
VBAでのエラー
-
マクロについて教えてください...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAがブレークモードになっ...
-
実行時エラー3001「引数が間違...
-
ExcelVBA Range クラスの Page...
-
VBS実行時エラー オブジェクト...
-
EXCEL VBAマクロ中断でデバッグ...
-
Outlook.ApplicationをCreateOb...
-
VBSで変数の宣言はできないので...
-
VBAのコードがエラーになっ...
-
実行時エラー -'-2147417848
-
ADODB.Streamを使用してUTF-8を...
-
EXCEL/VBAで、自分のPCだけエラ...
-
OLEDB.NETで接続できない
-
プロシージャ名の取得
-
VB6+SQL サーバー 2000 で 実行...
おすすめ情報