• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2つの内容と日付が交差するセルに値を加算したい)

2つの内容と日付が交差するセルに値を加算したい

このQ&Aのポイント
  • エクセルで受注登録をする際、取引先名と商品名を選択するユーザーフォームがあります。それぞれの値をテキストボックスに表示し、別のテキストボックスに日付と受注数を入力します。登録ボタンを押すと、選択したセルに受注数が加算されます。
  • エクセルで受注登録をする際、取引先名と商品名を選択するユーザーフォームがあります。入力された値を表示するテキストボックスがあり、別のテキストボックスに日付と受注数を入力します。登録ボタンを押すと、選択したセルに受注数が加算されます。
  • エクセルでの受注登録を容易にするため、取引先名と商品名を選択するユーザーフォームがあります。入力された値をテキストボックスに表示し、日付と受注数を別のテキストボックスに入力します。登録ボタンを押すと、選択したセルに受注数が加算されます。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

マクロでイチイチと探して加算していくだけです。 private sub CommandButton1_Click()  dim r as range  dim r0 as string  dim c as range ’以下ダラダラとデータチェック  if me.textbox1 = "" then   msgbox "SELECT LISTBOXES"   exit sub  end if  if me.textbox2 = "" then   msgbox "INPUT DATE"   exit sub  end if  if me.textbox3 = "" then   msgbox "INPUT NUMBER"   exit sub  end if  set c = worksheets("Sheet1").range("1:1").find(what:=datevalue(me.textbox2), lookin:=xlformulas, lookat:=xlwhole)  if c is nothing then   msgbox "NOT MATCH IN DATE"   exit sub  end if  set r = worksheets("Sheet1").range("A:A").find(what:=listbox1.value, lookin:=xlvalues, lookat:=xlwhole)  if r is nothing then   msgbox "NOT MATCH IN A"   exit sub  end if ’本番  r0 = r.address  do  if r.offset(0, 1) = me.listbox2.value then   with worksheets("Sheet1").cells(r.row, c.column)   .value = .value + me.textbox3.value   end with   exit sub  end if  set r = worksheets("Sheet1").range("A:A").findnext(r)  loop until r.address = r0  msgbox "NOT MATCH IN B" end sub

hassyrock
質問者

お礼

ご回答ありがとうございます! おかげ様で問題解決にいたりました!!

その他の回答 (1)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

まず、発想を変えてください。 データを日付(横方向)に伸ばしていくと必ず限界が来ます。 また、横移動もマウス操作が出来ませんよね。 パソコンは、データは縦へ蓄積すると使いやすくなるように 造られています。 それと、データを加算して保持することです。 一度、ミス入力をしてしまうと、どこでミスが起きたかさえ わからなくなります。 一般的な方法 1、ユーザーフォームで取引先・商品名を選択、ボタンを押すと 2、データシートへ下方向にデータが記述されていく 3、必要に応じて、決まっているフォーマットの書式に表示されるような   関数などを考える。 1、の際の日付も毎日、当日の業務ができれば、日付の入力も不要になりますよね。 データも常に最新の状態ということです。

hassyrock
質問者

お礼

ご回答ありがとうございます! データベースの様に縦に蓄積して関数で抜き出す事も検討&実際に試験してみたのですが・・・ 商品点数が多く、関数を入れると大変重たくなってしまいます。 そこで、なるべく関数を使わず作成しようと思い至りました。 ただ、やはり入力間違い等の検証等にはデータシートが必要となりますので、色々と検討してみたいと思います。

専門家に質問してみよう