VBAの話。【一かたまり】で文字列や数字をプログラムの中で管理しようとした場合、VBAの場合選択肢としては
主に配列かコレクションか構造体、ということになると思うのですが(クラスモジュールはこの3つを全て内包することができるのでとりあえずここでは除外)
この中ではこれまで、わたしはほぼなるべくコレクションを優先して使うようにしていました。
一応自分の中では明確な理由があって、配列は新規要素の追加や削除が面倒、構造体はあくまで変数のみをオブジェクトで管理できるものなので、
それだったらプロシージャも管理できるクラスモジュールで良いよね、という考え方になり【一かたまり】で変数を管理したいのであれば
残ったコレクション、ということになっていました。
…ただ最近、ちょっとその考え方に変化が起こってきまして(^^;。【一かたまり】で管理していた変数を、最終的に何等かの区切り文字で区切って文字列にしてから結果を出力したい、
そんなケースでは配列、特に一次元配列結構良いかも?という考え方になってきました。モロに宗旨替えです(笑)。
【一かたまり】の変数を何かで区切って(区切らなくても)文字列にする場合、コレクションであればFor Each~Next等のループを使うしかないわけですが
一次元配列であれば(特定の条件であれば二次元配列でも)Join関数を使って、かなり簡単に配列→文字列にできますからね~(^^)。
ちょっと前にこれを知ってからは、もうすっかり味をしめてしまって(笑)。近頃、Dictionaryオブジェクトをやたら使うようになってきたのも
Dictionaryには格納していたKeyやItemを一次元配列にして出力することができるメソッドがあるからなんですよね~(^^)。
実はもう、最近それくらいJoin関数の虜になってしまっていて(苦笑)。
主に配列かコレクションか構造体、ということになると思うのですが(クラスモジュールはこの3つを全て内包することができるのでとりあえずここでは除外)
この中ではこれまで、わたしはほぼなるべくコレクションを優先して使うようにしていました。
一応自分の中では明確な理由があって、配列は新規要素の追加や削除が面倒、構造体はあくまで変数のみをオブジェクトで管理できるものなので、
それだったらプロシージャも管理できるクラスモジュールで良いよね、という考え方になり【一かたまり】で変数を管理したいのであれば
残ったコレクション、ということになっていました。
…ただ最近、ちょっとその考え方に変化が起こってきまして(^^;。【一かたまり】で管理していた変数を、最終的に何等かの区切り文字で区切って文字列にしてから結果を出力したい、
そんなケースでは配列、特に一次元配列結構良いかも?という考え方になってきました。モロに宗旨替えです(笑)。
【一かたまり】の変数を何かで区切って(区切らなくても)文字列にする場合、コレクションであればFor Each~Next等のループを使うしかないわけですが
一次元配列であれば(特定の条件であれば二次元配列でも)Join関数を使って、かなり簡単に配列→文字列にできますからね~(^^)。
ちょっと前にこれを知ってからは、もうすっかり味をしめてしまって(笑)。近頃、Dictionaryオブジェクトをやたら使うようになってきたのも
Dictionaryには格納していたKeyやItemを一次元配列にして出力することができるメソッドがあるからなんですよね~(^^)。
実はもう、最近それくらいJoin関数の虜になってしまっていて(苦笑)。