最初の作りが甘いと、後々まで祟るというお話
1年前作成した ↓ こちら。
infoment.hatenablog.com
改築・増築を繰り返した結果、考え方の不一致などが多数生じていた。
そこで今回、数日かけて全て再構築してみた。
再構築したクラスモジュール全文は、上記リンク先に反映済みだ。
更に今回は、配列に新たなレコード行を追加できるよう、機能拡張してみた。
例えば、 ↓ の表について。
この表に、
- No. 4
- 品名 ぶどう
- 単価 250
の一行を追加し、新たなシートを作成して「編集後」という名前をつけ、
そのシートに編集後の配列を張り付けたうえでテーブル化し、さらに
書式を整えてみよう。
↓ サンプルがこちら。
Sub ArrayTest() Dim arr As Variant arr = Array(4, "ぶどう", 250) With New VBAProject.ArrayEdit ' 編集前配列。 .source_array = Range("A1:C4") ' 編集前配列に、上記arrを最終レコードとして追加。 .RowAdd arr, , cpInsert ' 上記編集後配列を、新たに作成した「編集後」シートに ' テーブルとして貼り付け。 .PasteArray sheet_name:="編集後", _ paste_type:=ptTable, _ column_autofit:=True, _ select_array:=case_edited End With End Sub
結果、無事にテーブルを作成できた。
今回の再構築で、一番苦労したところ。それは、再構築の前後で互換性を完全に
保つこと。最初の作りが甘いと、後々まで祟ります(自戒の句)。
参考まで。