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

解決済みの質問

[VB6/VBA] Variant型配列リテラルの書き方

http://oshiete1.goo.ne.jp/qa4043791.html
の#1のURIに
http://exceler.blog68.fc2.com/blog-entry-20.html

Dim a() As Variant // As Variant追加。As Integerとかは無理っぽい
a = [{32,5,0}] //これ

というような表記があるのですが,msdn.comもしくはmicrosoft.comのどこかに,この書き方に関する解説はありますか?

VB.NETで
Option Explicit On
Option Compare Binary
Option Strict On
Option Infer Off
Module Program
Sub Main()
Dim a() As Integer
a = new integer(){1,2,3}
End Sub
End Module

というような書き方が出来るのは知っているのですが。

投稿日時 - 2008-05-27 06:43:48

QNo.4053673

暇なときに回答ください

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

ExcelVBAの機能用ですよ
『Microsoft Excel x.xx Object LIBRARY』を参照設定してやると
ご質問のような記述が可能になるようです

公式なドキュメントは見つけられませんでした
VB付属の MSDNで『配列』『リテラル』を検索すると
ExcelのApplicationオブジェクト Internationalプロパティの中に
『配列リテラル』を見つける事が出来ました

投稿日時 - 2008-06-01 10:31:53

お礼

なるほど。そこまでは足取りを辿れるようですね。というかそこで途切れちゃうか。
(VB6自体持ってないので参照設定云々は試せず)

http://msdn.microsoft.com/ja-jp/library/microsoft.office.interop.excel._application.international(VS.80).aspx

投稿日時 - 2008-06-01 11:04:27

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

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

回答(2)

ANo.1

>Dim a() As Variant
>a = [{32,5,0}]

VB6でこれに近い書き方は、Arrayを使います。
Dim a As Variant
a = Array(32, 5, 9)
とか
a = Array("I", "have", "a", "pen")
といった感じです。

投稿日時 - 2008-05-27 13:09:44

補足

Array関数が使えることは知っています。
そうではなく
「この記法が説明されている場所があるか?」
が質問なんです。

VB6では
a = [{32,5,0}]
の記法は無効で,VBA特有なのでしょうか?

該当部分の説明をマイクロソフトのサイトから探し出して欲しいんです。

投稿日時 - 2008-05-27 15:27:33

あなたにオススメの質問