こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

インデックスが有効範囲にありませんとは!??

FNameのファイルをひらきA列(数字)とB列(日付)最終行まで配列で取り込み
F1Nameのファイルをひらき日付を検索し同じ日付のセルを見つけ3列右側に移動した
位置に数字を入力しその隣に 異常無しを書き込むマクロですが
Cells.Find(What:=serch_date(z2),
ActiveCell.Value = No_data(z2)
の2か所でインデックスが有効範囲にありませんで止まってしまいます・・・
原因がわかりませんので、ご存知の方お教えいただけないでしょうか?


Windows(FName).Activate
Range("B1").Select

'選択しているセルのアドレスの取得
serch_u = ActiveCell.Address
'最終行検索(エクセルの機能)
Selection.End(xlDown).Select
'選択しているセルの行番号の取得(データの最終行)
end_row = ActiveCell.Row
'選択しているセルのアドレスの取得
serch_d = ActiveCell.Address
'最大値検索対象区間の選択(データの開始位置からデータの最終行)
Range(serch_u, serch_d).Select

serch_date = Range(serch_u, serch_d)


Range("A1").Select
'選択しているセルのアドレスの取得
serch_u1 = ActiveCell.Address
'最終行検索(エクセルの機能)
Selection.End(xlDown).Select
'選択しているセルの行番号の取得(データの最終行)
end_row1 = ActiveCell.Row
'選択しているセルのアドレスの取得
serch_d1 = ActiveCell.Address
'最大値検索対象区間の選択(データの開始位置からデータの最終行)
Range(serch_u1, serch_d1).Select

No_data = Range(serch_u1, serch_d1)


Windows(F1Name).Activate

For z2 = LBound(serch_date) To UBound(serch_date)

Cells.Find(What:=serch_date(z2), After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, MatchByte:=False, SearchFormat:=False).Activate

Dim FoundCell As Range ''またはバリアント型(Variant)とする
Set FoundCell = Range("A1").CurrentRegion.Find(What:=serch_date(z2))
If FoundCell Is Nothing Then
MsgBox "検索に失敗しました"
Else
FoundCell.Select
End If

ActiveCell.Offset(0, オフセット値).Activate
ActiveCell.Value = No_data(z2)
ActiveCell.Offset(0, 1).Activate
ActiveCell.FormulaR1C1 = "異常無し"

        Next z2

投稿日時 - 2013-03-25 22:00:49

QNo.8011620

すぐに回答ほしいです

質問者が選んだベストアンサー

2個以上のセルを含むRangeをVariant変数に入れると、2次元配列として格納されます。
A列しか含んでなかったら1次元になりそうなものですが、それでもやっぱり2次元です。
次のように2次元目のインデックスを加えたら参照できるはずです。

serch_date(z2)
→ serch_date(z2, 1)

No_data(z2)
→ No_data(z2, 1)

LBound, UBoundは2個目の引数を省略したら1次元目のサイズを返すようになっているので、Forの行はエラーになりません。

投稿日時 - 2013-03-26 06:38:25

お礼

まさにおっしゃるとおりでした!!
マクロの記録と、インターネットで検索したコードを
切った張ったで作ってますので、基本無しの自己流ですので
ご助言本当に助かりました。
お忙しいところ本当にありがとうございました!!

投稿日時 - 2013-03-26 23:54:43

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問