| 
    
     |  | 下記のマクロで製品の原料費の計算をしています。 シート(配合台帳)のB列のReNoナンバー(R1001〜R1800以上)をtxtReNo.Text
 に入力後、 検索、修正ボタンをクリックすると原料費の計算結果が シート(配合台帳)の行(入力ReNoナンバー)、列(18)に記載されます。
 これをReNoナンバーR1001からR1800以上まで自動的に連続して検索、修正、配合台帳への記載を行いたいのですが方法があれば、教えて頂けませんか、宜しくお願いします。
 
 ' =================================================
 ' 検索コマンドボタンがクリックされたときのプロシージャ
 ' =================================================
 Private Sub cmd検索_Click()
 Dim strキー As String
 
 strキー = txtReNo.Text
 
 num配合 = Application.Match(strキー, rng配合.Columns(1), 0)
 
 '検索した得意先データをテキストボックスに代入する
 txtReNo.Text = rng配合.Cells(num配合, 1)
 
 txt収率1.Text = rng配合.Cells(num配合, 16)
 txt原料費.Text = rng配合.Cells(num配合, 17)
 txt加工賃.Text = rng配合.Cells(num配合, 18)
 txt原料1.Text = rng配合.Cells(num配合, 20)
 txt比率1.Text = rng配合.Cells(num配合, 21)
 txt原料2.Text = rng配合.Cells(num配合, 22)
 txt比率2.Text = rng配合.Cells(num配合, 23)
 txt原料3.Text = rng配合.Cells(num配合, 24)
 txt比率3.Text = rng配合.Cells(num配合, 25)
 txt原料4.Text = rng配合.Cells(num配合, 26)
 txt比率4.Text = rng配合.Cells(num配合, 27)
 txt原料5.Text = rng配合.Cells(num配合, 28)
 txt比率5.Text = rng配合.Cells(num配合, 29)
 
 P_受注額計算 1
 P_受注額計算 2
 P_受注額計算 3
 P_受注額計算 4
 P_受注額計算 5
 
 End Sub
 ' =================================================
 ' 修正コマンドボタンがクリックされたときのプロシージャ
 ' =================================================
 Private Sub cmd修正_Click()
 Dim strキー As String
 
 strキー = txtReNo.Text
 
 'ReNoのレコードを検索する
 num配合 = Application.Match(strキー, rng配合.Columns(1), 0)
 
 '修正内容を該当のレコードに書き込む
 rng配合.Cells(num配合, 1) = txtReNo.Text
 
 rng配合.Cells(num配合, 16) = txt収率1.Text
 rng配合.Cells(num配合, 17) = txt原料費.Text
 rng配合.Cells(num配合, 18) = txt加工賃.Text
 rng配合.Cells(num配合, 20) = txt原料1.Text
 rng配合.Cells(num配合, 21) = txt比率1.Text
 rng配合.Cells(num配合, 22) = txt原料2.Text
 rng配合.Cells(num配合, 23) = txt比率2.Text
 rng配合.Cells(num配合, 24) = txt原料3.Text
 rng配合.Cells(num配合, 25) = txt比率3.Text
 rng配合.Cells(num配合, 26) = txt原料4.Text
 rng配合.Cells(num配合, 27) = txt比率4.Text
 rng配合.Cells(num配合, 28) = txt原料5.Text
 rng配合.Cells(num配合, 29) = txt比率5.Text
 
 '各テキストボックスの内容をクリアする
 P_項目クリア
 
 End Sub
 ' ======================================
 ' TxT原料1が変更になったときのプロシージャ
 ' ======================================
 Private Sub txt原料1_Change()
 Dim VV As Range
 Worksheets("商品台帳").Select
 With Range("B3:K65536")
 Set VV = .Find(txt原料1.Value, LookIn:=xlValues, lookat:=xlWhole)
 If Not VV Is Nothing Then
 txt原料名1.Value = VV.Offset(, 1).Value
 txt単価1.Value = VV.Offset(, 3).Value
 Else
 
 End If
 End With
 
 P_受注額計算 1
 End Sub
 ' ======================================
 ' TxT原料2が変更になったときのプロシージャ
 ' ======================================
 Private Sub txt原料2_Change()
 Dim VV As Range
 Worksheets("商品台帳").Select
 With Range("B3:K65536")
 Set VV = .Find(txt原料2.Value, LookIn:=xlValues, lookat:=xlWhole)
 If Not VV Is Nothing Then
 txt原料名2.Value = VV.Offset(, 1).Value
 txt単価2.Value = VV.Offset(, 3).Value
 Else
 
 End If
 End With
 P_受注額計算 2
 End Sub
 ' ==========================================
 ' 比率と単価から原料費を計算するプロシージャ
 ' ==========================================
 Private Sub P_受注額計算(intCol As Integer)
 
 If IsNumeric(txt比率(intCol).Text) And IsNumeric(txt単価(intCol).Text) Then
 
 txt金額(intCol).Text = _
 Format(CDbl(txt比率(intCol).Text) * CDbl(txt単価(intCol).Text) / 100, "#,##0.00")
 
 txt合計額(1).Text = Val(txt金額(1).Text) + Val(txt金額(2).Text) + Val(txt金額(3).Text) _
 + Val(txt金額(4).Text) + Val(txt金額(5).Text)
 
 txt原料費.Text = Format(txt合計額(1).Text / txt収率1.Text + 0.45, "#,##0")
 
 Else
 txt金額(intCol).Text = ""
 End If
 End Sub
 
 |  |