| 
    
     |  | inoue さん 
 さっそくありがとうございます。
 
 >まず、回答ではありませんが、
 >>Dim 下top(100), 下end(100), 上top(100), 上end(100) As Variant
 >この場合では結果的に問題ありませんが、
 >この書き方だと「上end」以外はデータ型を明示していないことになります。
 >それぞれの変数に「As ...」は明記しないといけません。
 
 文法も知らずやみくもに、コンマで区切って使っていました。この例ではありませんがエラーにならなかったのは「上end」以外はVariantに省略時設定されて動いたということでしょうか?
 しかしこんな例でも現在動いているのですが・・なぜでしょう
 
 Public 日付, 日付end As Object
 
 >
 >>表現方法がわからず、うまくいきません。
 >普通に引数に渡すのではいけませんか?
 >[例]
 >Sub TEST1()
 >  Dim A(100) As Variant
 >  Dim B(200) As Variant
 >  Call TEST2(A, B)
 >End Sub
 >
 >Sub TEST2(HOGE1 As Variant, HOGE2 As Variant)
 >MsgBox UBound(HOGE1) & "-" & UBound(HOGE2)
 >End Sub
 
 UBoundがわかりません。なにかの関数ですか?まったく素人で申し訳ありません。
 それから私の持っているVBAの参考書にはプロシージャの呼び出しは
 Sub TEST1()
 Dim A As Variant
 Dim B As Variant
 TEST2 A, B
 End Sub
 のように書いてあるのですが、Callを使わなければいけないのでしょうか?
 
 なおVBAの文法書でいいものがあれば教えてもらえませんか・・
 
 
 |  |