Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


26687 / 76732 ←次へ | 前へ→

【55375】Re:ワークシート関数だと動かない
発言  Jaka  - 08/5/1(木) 12:58 -

引用なし
パスワード
   >gyou = WorksheetFunction.Match(Sheets("入力").Cells(kazu, 2), Sheets("データ").Range("D1:D65536"), 0)
>retu = WorksheetFunction.Match(Sheets("入力").Range("B1"), Sheets("データ").Range("A1:IV1"), 0)
日付の入ったセルを検索値として、日付の入ったセルをMatchさせるには、
まず、どちらのセルも年号から記述されていることが前提になります。

また、Matchを使って、検索値の指定にセルを指定するだけではだめです。
例えば、
Match(Sheets("入力").Cells(kazu, 2),・・・
の部分は、シリアル値で指定する必要があります。

Sheets("入力").Cells(kazu, 2)
 ↓
CLng(Sheets("入力").Cells(kazu, 2).Value)
もしくは、
Sheets("入力").Cells(kazu, 2).Value2

それと、
エクセル関数使用時にWorksheetFunctionをつけると、一致する物が見つからない場合、実行エラーになります。

回避方1

Dim Ans As Valiant
Ans = Application.Match(Sheets("入力").Cells(kazu, 2).Value・・・・
If iserror(Ans) Then
  Msgbox "見つかりません。"
end if

とか。
0 hits

【55373】ワークシート関数だと動かない ねこめ 08/5/1(木) 12:20 お礼
【55374】Re:ワークシート関数だと動かない テト 08/5/1(木) 12:35 発言
【55375】Re:ワークシート関数だと動かない Jaka 08/5/1(木) 12:58 発言
【55376】Re:ワークシート関数だと動かない ねこめ 08/5/1(木) 14:13 お礼

26687 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free