回答受付が終了しました

ID非公開

2021/6/2 8:49

22回答

VBAを勉強しています。エクセルでは、計算実行しているのですが、手作業の繰り返しが多く、マクロ・VBAにできないかの相談です。

画像
補足

エクセルでは実施していますので、エクセルの回答はいりません。 エクセルでできる事を、VBAでやるにはどうすれば良いか、という勉強からです。

Visual Basic | Excel88閲覧xmlns="http://www.w3.org/2000/svg">100

回答(2件)

0

VBAじゃないけど 列の集計 C3に =IF($B3="箱数",SUM(OFFSET(D3,,,1,IFERROR(MATCH("地区",D$2:$ZZ$2,0)-1,COUNTA(D$2:$ZZ$2)))),"") と入力 あとは必要な場所にコピー $ZZ$2 の部分は表の範囲に変更すればなお良し やっている事は、B列に箱数と書かれた行で、2行目に、自セルの行より後で”地区”と書かれた行を探し、その手前まで集計する という計算式です、これで範囲内の集計ができるので、書き換えなくても良いんじゃないでしょうか。 3地区のうち2地区からしか仕入れない場合でも、不要な箇所は数値を入力しなければ良いので。

0

VBAの前に合理的な表の作り方からやるべきかと。 表というのは基本的に2次元のマトリックスで作る物なんです。 最終的に紙の都合や表示の都合でこのような形式にまとめる事までは否定しません。 むしろ2次元の表を元にしてこの形式が自動的に生成されるのがあるべきスタイルと思いますよ。 2次元なら多分貴方も関数等で計算出来ると思うから。

ID非公開

質問者2021/6/2 10:49

ありがとうございます。 エクセルでやっている事が、VBAでできないのがおかしいと思っている部分がありますが、VBAをマスターしたいので、勉強の為です。