という名前の 1 つのワークシートがmainData
あり、10 個の製品のすべてのデータが含まれています。
に新しいデータを入力するときにmainData
、新しいデータを別の製品ワークシートの最後の行に自動的にコピーしたいと考えています。に新しいデータを入力するときmainData
、新しいデータがどの製品のワークシートに属しているかをどのように認識し、新しいデータを製品のワークシートにコピーできますか?
製品のタイプに応じて別の 10 個のワークシートにコピーする必要があるため、別のワークシートにコピーすることに行き詰まっています。
これが私がしたことmainData
です:
With Sheets("mainData")
LastRow = .Range("B" & .Rows.Count).End(xlUp).Row + 1
.Range("B" & LastRow) = ComboBox1.Text
.Range("C" & LastRow) = TextBox1.Text
.Range("D" & LastRow) = TextBox2.Text
.Range("E" & LastRow) = TextBox3.Text
.Range("F" & LastRow) = TextBox4.Text
.Range("G" & LastRow) = TextBox5.Text
.Range("H" & LastRow) = ComboBox2.Text
.Range("I" & LastRow) = TextBox6.Text
.Range("J" & LastRow) = TextBox7.Text
.Range("K" & LastRow) = TextBox8.Text
Range("B32:B320").Select
ActiveWorkbook.Worksheets("mainData").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("mainData").Sort.SortFields.Add Key:=Range("B32:B305") _
, SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
"prod1, prod2, prod3, prod4, prod5, prod6, prod7, prod8, prod9, prod10" _
, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("mainData").Sort
.SetRange Range("B32:W305")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
これが私が意味することです。新しい prod1 データを mainData ワークシートに入力すると、それを製品 1 ワークシートの最後の行に自動的にコピーしたいと考えています。prod2、prod4などの多くのタイプの製品をmainDataに入力する場合がありますが、このデータを特定の製品ワークシートにコピーするにはどうすればよいですか?