-
hoehoe1234
- 331
- 0
- 0
- 0
![](https://s.togetter.com/static/web/img/placeholder.gif)
わくわくV 10回目 2020/8/30(日) ある生徒さんが取り組んでいるノンプロアプリの要素技術である「テーブル機能」について調べます。このあたりはエクセルオブジェクトとその関連がわかってないととっつきにくいかもしれませんね。生徒さん同士の助け合いもあっていい感じです。 pic.twitter.com/fibN2DSb0o
2020-09-06 06:34:34![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
シートからListObject(以下、テーブルということもあります)を取得するコードを他の生徒さんがつくってくれました。 pic.twitter.com/8q37KLbT4Q
2020-09-06 06:36:55![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
生徒さん、いろいろ奮闘中です。最初はなかなかオブジェクトを調べていく感覚がわかりにくいですね。 pic.twitter.com/ttDw0m2V7X
2020-09-06 06:39:37![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
アプリとしては分類欄以降を連結してまとめ欄に表示するのですがまずはテーブルとその周辺のオブジェクト、および、テーブールをVBAからどう使うのか?を調べる必要があります。 pic.twitter.com/LRn0sKMU2q
2020-09-06 06:41:04![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
ノンプロアプリでは業務は本人がよく知っているので設計としては①システム概要図、②業務フロー、③機能一覧のうちの「②」が不要になるイメージですね。③はよくやりますがアプリの構成を決める「①」は重要です。作りそのものですからね。 pic.twitter.com/YRw3SQid1z
2020-09-06 06:43:31![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
エクセルオブジェクトを説明する前にCollectionの説明が必要になります。エクセルオブジェクトのうち最後の「s」の付くオブジェクトはコレクションとしての機能を有しています。なのでまずはVBAのCollectionから調査していきます。 pic.twitter.com/MIns8oJHTe
2020-09-06 06:45:49![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
図左がCollection、右が配列ですね。Collectionは配列の機能強化版のように見えますが一番の違いは参照型ということです(配列も実態は参照型ですが値として振る舞います)。インデックだけでなくキーも指定できることは重要です。
2020-09-06 06:47:41![](https://s.togetter.com/static/web/img/placeholder.gif)
Worksheets(1)、Worksheets("Sheet1")はそれぞれインデックスとキーを指定しています。VBAのCollectionと同じですね。大容量性能、キーの使用と便利ですが組み込み関数と互換性がないため配列の代替えにはなりにくいところが残念ですね。
2020-09-06 06:49:52![](https://s.togetter.com/static/web/img/placeholder.gif)
Workbooksあたりからエクセルオブジェクトの階層構造を説明しています。エクセルオブジェクトは複数のものをくくるのにこのコレクションを使用して(図左)、階層構造をなしているのでとても使いやすいですね。 pic.twitter.com/nJ0JQr6yWi
2020-09-06 06:51:28![](https://s.togetter.com/static/web/img/placeholder.gif)
![](https://s.togetter.com/static/web/img/placeholder.gif)
ListObjectが、エクセルオブジェクトの中でどのような位置づけにあるかの説明です。この階層構造と関連性がつかめればなにか掴んだような気になると思います。 pic.twitter.com/z8db0TN7SS
2020-09-06 06:53:38![](https://s.togetter.com/static/web/img/placeholder.gif)