Excel VBA 質問スレッド №2151 (解決済)
VBAのFindで値が存在するのに結果がNothingになる
投稿者 : test_type 投稿日時 : 2025/10/07(Tue) 15:55:29 OS : 未指定 EXCEL : 未指定
シートの1行目に今月の日付が1から31まで入力されており、
昨日日付のセル位置をマクロで取得したいですが、
以下の構文で検索結果がNothingになります。
Dim last_day As Long
Dim FindRng As Range
'-- 昨日日付取得
last_day = Format(Date() - 1, "d")
'-- 検索してセル位置を取得
Set FindRng = Rows(1).Find(last_day, LookIn:=xlValues, LookAt:=xlWhole)
1から31の日付が入力されたセルはセルの書式設定が「通貨(-1,234 赤字)」となっており、
これが原因と思われますが、どうすれば検索結果のNothingを回避できますでしょうか。
上記、セルの書式設定は変更できないものとなっています。
シートの1行目に今月の日付が1から31まで入力されており、
昨日日付のセル位置をマクロで取得したいですが、
以下の構文で検索結果がNothingになります。
Dim last_day As Long
Dim FindRng As Range
'-- 昨日日付取得
last_day = Format(Date() - 1, "d")
'-- 検索してセル位置を取得
Set FindRng = Rows(1).Find(last_day, LookIn:=xlValues, LookAt:=xlWhole)
1から31の日付が入力されたセルはセルの書式設定が「通貨(-1,234 赤字)」となっており、
これが原因と思われますが、どうすれば検索結果のNothingを回避できますでしょうか。
上記、セルの書式設定は変更できないものとなっています。
スポンサーリンク
[返信 1] Re : VBAのFindで値が存在するのに結果がNothingになる
投稿者 : test_type 投稿日時 : 2025/10/07(Tue) 16:29:04
■[質問] test_typeさん(2025-10-07 15:55:29)の記事
> シートの1行目に今月の日付が1から31まで入力されており、
> 昨日日付のセル位置をマクロで取得したいですが、
> 以下の構文で検索結果がNothingになります。
>
> Dim last_day As Long
> Dim FindRng As Range
>
> '-- 昨日日付取得
> last_day = Format(Date() - 1, "d")
> '-- 検索してセル位置を取得
> Set FindRng = Rows(1).Find(last_day, LookIn:=xlValues, LookAt:=xlWhole)
>
>
> 1から31の日付が入力されたセルはセルの書式設定が「通貨(-1,234 赤字)」となっており、
> これが原因と思われますが、どうすれば検索結果のNothingを回避できますでしょうか。
> 上記、セルの書式設定は変更できないものとなっています。
>
■[質問] test_typeさん(2025-10-07 15:55:29)の記事
> シートの1行目に今月の日付が1から31まで入力されており、
> 昨日日付のセル位置をマクロで取得したいですが、
> 以下の構文で検索結果がNothingになります。
>
> Dim last_day As Long
> Dim FindRng As Range
>
> '-- 昨日日付取得
> last_day = Format(Date() - 1, "d")
> '-- 検索してセル位置を取得
> Set FindRng = Rows(1).Find(last_day, LookIn:=xlValues, LookAt:=xlWhole)
>
>
> 1から31の日付が入力されたセルはセルの書式設定が「通貨(-1,234 赤字)」となっており、
> これが原因と思われますが、どうすれば検索結果のNothingを回避できますでしょうか。
> 上記、セルの書式設定は変更できないものとなっています。
>
当掲示板について
- Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
- 記事内ではHTMLのタグは使用できません。
- 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
- Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
- Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
( 処理日時 : 2025-10-11 05:53:06 )