こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

VBAで

会社で毎日現品札というものを発行するのですが、電卓で計算しながら発行しており非常に時間がかかるので1回或いは2回の印刷でできないかとおもい質問させていただきました。
やりたい内容は下記のイメージです。
シートに18梱包分を入力できるようにしてあり、ユーザーフォームにテキストボックスが11から28まで(18梱包分)配置されていて、ここに一括で1梱包数(450や192など)を入力する。※これはできています。

'コマンドボタン2を押すと1梱包数を一括で入力する
Private Sub CommandButton2_Click()
Dim item As String, i As Long
item = TextBox29.Text
For i = 11 To 28
Me.Controls("TextBox" & i).Text = item
Next i
End Sub

次にラベル14に総数(例えば28000)が表示されており、ラベル11には18梱包分の合計(450*18=8100)が表示されています。※450や192はテキストボックス29にシートのAG2から設定してあります。
で、ラベル18に何を何部印刷すればいいか表示したいです。
例えば、「8100を3部と3700を1部印刷してください」となってほしいです。

1梱包数450や192などを下回る総数の場合もあります。
ユーザーフォームに他にもテキストボックスやラベルが配置されています。

よろしくお願いいたします。

投稿日時 - 2017-02-26 12:51:14

QNo.9298424

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

あえて言う。質問の説明が悪くて、何をどうしたいかわからない。
もし小生がピントはずれなら、そう言ってください。
他の後続回答者のために。
なぜテキストボックスを使うのかよくわからない。
エクセルシートだけを使ってもできそうだのに。
関係ブックは1つ?シート数も1つ?
それに質問で、VBAコードなど一部を挙げても、読む方には役に立たない。読者に全貌を理解してもらうようにしないと。
文章だけで説明する訓練をしたらどうです。それに会社特有の帳票名などはなるべく出さないことが望ましい。
ーー
1シートに入力・計算・表示するとすればどうなる? 
あとからユーザーフォームやテキストボックスを利用するように、変えるのはやさしいと思う。
入力データシートは
A列A1:A18 18梱包分??
B列B1:B18 1梱包数 例 450や192  <--AG2から
C1 総個数  例28000
D1 何部印刷指定
ーー
計算はどうするの。総個数÷1梱包数と、割り算して商と余りを出せばよいのか?
1梱包内には1商品や製品だけではないの?こういう会社の状況がわからないので、全体がわかりにくい。

投稿日時 - 2017-02-26 20:58:52

お礼

imogasiさん

ありがとうございます。

投稿日時 - 2017-02-26 21:39:41