Excel VBA質問箱 IV

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

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


18081 / 76732 ←次へ | 前へ→

【64095】配列に中身が入らない
質問  NK  - 10/1/18(月) 17:18 -

引用なし
パスワード
   つい数日前からマクロに挑戦している初心者ですが、是非皆様のご協力をいただきたく投稿いたします。

 以下のようにマクロを書いて、エクセルのデータベースの情報を配列に格納していきたかったのですが、二点質問させてください。

[QUESTION1]どうやら、どの配列にも何も入っていないようなのです。何故でしょう?

[QUESTION2]配列に次々と格納していくときに、for next構文で上限を変数におき、配列もlist(4,cnt)のように変数をおきたかったのですが、エラーが出てしまいました。何故でしょう?

 質問をするにあたって、あますことなく情報を書いてあるかどうかもわからないくらい、初心者ですが、どうかご容赦のほどお願いするとともに、是非アドバイスをください。よろしくお願いします。


Sub kensaku()

'[STEP1:データを配列化する]
  Dim ws As Worksheet
  Set ws = Worksheets("MDT")
  Dim cnt As Long
  cnt = ws.Range("A65536").End(xlUp).Row - 7
  
  Dim List(4, 303) As Variant '[QUESTION2]何故303のところにcntが入らないのか?
  Dim m As Long
  
  For m = 0 To cnt
    List(0, cnt) = ws.Range("R7").Offset(cnt).Value '摘要
    List(1, cnt) = ws.Range("A7").Offset(cnt).Value '勘定年月
    List(2, cnt) = ws.Range("C7").Offset(cnt).Value '工事番号
    List(3, cnt) = ws.Range("H7").Offset(cnt).Value '伝票番号
    List(4, cnt) = ws.Range("N7").Offset(cnt).Value '仕訳金額
  Next
  
  Debug.Print List(0, 1) '[QUESTION1] ここで試しにPRINTしてみてもすべて空の模様
  Debug.Print List(1, 1)
  Debug.Print List(2, 1)
  Debug.Print List(3, 1)
  Debug.Print List(4, 1)
  
  
  '[STEP2:キーワードとチェックをする]
  
'  Dim n As Long
  
'  Dim Target As String
'  Target = Worksheets("抽出MASTER").Range("B2").Value
  
'  For n = LBound(List, 2) To UBound(List, 2)
'    If InStr(List(0, n), Target) > 0 Then
'      Debug.Print "勘定年月:" & List(1, n)
'      Debug.Print "工事番号:" & List(2, n)
'      Debug.Print "伝票番号:" & List(3, n)
'      Debug.Print "仕訳金額:" & List(4, n)
'      Debug.Print "摘要:" & List(0, n)
'    End If
 
  
'  Next
  

End Sub
2 hits

【64095】配列に中身が入らない NK 10/1/18(月) 17:18 質問
【64096】Re:配列に中身が入らない yoshi 10/1/18(月) 18:23 回答
【64097】Re:配列に中身が入らない UO3 10/1/18(月) 18:39 発言
【64104】Re:配列に中身が入らない NK 10/1/19(火) 12:59 お礼

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