みなさん、こんばんわ♡
Good evening,everybody!
「そのみちほうげん」です。
I'm Sonomichihougen.
皆さん、私の本職は、「システム企画」です。
さて、こんな困りごとに直面したことはございませんか?
1.エクセルマクロの困りごと
あるひとつの数表があると仮定します。
①数表の最終行の取得はどのようにする?
②数表の最終列の取得はどのようにする?
2.解決方法・・・ひとつの例です。
①変数(行の変数、列の変数)を定義します。
Dim 最終行 as long
Dim 最終列 as long
②エクセルを自動計算にします。
また、スタイルを変更し、cell関数が使えるようにします。
Application.Calculation = xlAutomatic
Application.RefrenceStyle = xlR1C1
※xlR1C1形式は、セルを座標として扱います。
例えば、Cell(1,1)=A1,Cell(2,2)=B2の意味になります。
③最終行が何行目か取得します。
最終行 = cells(Rows.count,1).End(xlUp).Row
この例では、1列目のデータが何行目まで入っているかを取得します。
最終行を取得したいので、取得したい最終行の1列目にデータが入って
いなければなりません。
もし入っていなければ、入っているところまでが最終行とみなされます。
この関数は、エクセルが制限する最大の行から上に向かって、最終行の
取得を試みます。
④最終列が何列目か取得します。
最終列 = cells(5,columns.count).End(xlToLeft).Colmn
この例では、5行目のデータが何列目まで入っているかを取得します。
最終列を取得したいので、取得したい最終列の行目にデータが入って
いなければなりません。
もし入っていなければ、入っているところまでが最終列とみなされます。
この関数は、エクセルが制限する最大の列から左に向かって、最終列の
取得を試みます。
3.用法例
画像にて確認願います。
4.如何ですか、皆さん。
うまく説明できない点があったかもしれません。ご容赦下さいませ。
エクセルマクロによる自働化に興味のある方は、参考になさって下さい。
(^^♪(^^♪(^^♪
smile,simle,smile
入門者のExcel VBA―初めての人にベストな学び方 (ブルーバックス)