นำสูตรไปใช้แล้วนะครับ แต่ว่า ที่ Sheet (Inventory) แถว Cell H กับ แถว Cell J ทำงานไม่สัมพันธ์กันครับ ต้องมีการ AddProdct เข้าไปไหม่ ถึงจะทำงานถ้าเพิ่มแถวที่ 17 ข้อมูลที่ Cell H 8 ถึงจะทำงานครับโดยไล่ลงมาเรื่อยๆครับ หรือข้อมูลวันที่แสดงบรรทัดถัดลงมาทั้งที่ยังไม่มีการนำสินค้าเข้าเลยครับ และเหมือนว่าสูตรไม่ยอมทำงานให้อัตโนมัติครับ ต้องปรับสูตรอย่างไรบ้างครับ สูตรที่ใช้ครับ อยู่ที่ UserForm "Save data"
Code: Select all
Sheet7.Cells(final, 8) = "=IF(ISNA(INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))),"""",IF(INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))=0,"""",INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))))"
ต้องปรับ Code อย่างไรครับ
Code: Select all
Private Sub CommandButton1_Click()
Dim i As Integer
Dim final As Integer
For i = 2 To 1000
If Sheet7.Cells(i, 2) = "" Then
final = i
Exit For
End If
Next
Sheets("Inventory").Unprotect Password:="1234"
Sheet7.Cells(final, 1) = "=IF(RC[1]="""","""",COUNTA(R2C[1]:RC[1]))"
Sheet7.Cells(final, 2) = Addproduct.TextBox1
Sheet7.Cells(final, 3) = Addproduct.TextBox2
Sheet7.Cells(final, 4) = Addproduct.TextBox3
Sheet7.Cells(final, 5) = Addproduct.TextBox4
Sheet7.Cells(final, 6) = Addproduct.TextBox5
Sheet7.Cells(final, 7) = "=IF(ISNA(VLOOKUP(RC[-5],Import!C7:C12,6,0)),""0"",(VLOOKUP(RC[-5],Import!C7:C12,6,0)))"
'Sheet7.Cells(final, 8) = "=IF(ISNA(INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))),"""",INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0)))"
Sheet7.Cells(final, 8) = "=IF(ISNA(INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))),"""",IF(INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))=0,"""",INDEX(Import!C[-5],MATCH(Inventory!RC[-6],C[-6],0))))"
Sheet7.Cells(final, 9) = "=IF(ISNA(VLOOKUP(RC[-7],Export!C7:C12,6,0)),""0"",(VLOOKUP(RC[-7],Export!C7:C12,6,0)))"
'Sheet7.Cells(final, 10) = "=IF(ISNA(INDEX(Export!C[-7],MATCH(Inventory!RC[-8],C[-8],0))),"""",INDEX(Export!C[-7],MATCH(Inventory!RC[-8],C[-8],0)))"
Sheet7.Cells(final, 10) = "=IF(ISNA(INDEX(Import!C[-7],MATCH(Inventory!RC[-8],C[-8],0))),"""",IF(INDEX(Import!C[-7],MATCH(Inventory!RC[-8],C[-8],0))=0,"""",INDEX(Import!C[-7],MATCH(Inventory!RC[-8],C[-8],0))))"
Sheet7.Cells(final, 11) = "=SUM(IF(ISERROR(RC[-4]-RC[-2]),0,RC[-4]-RC[-2]))"
Addproduct.TextBox1 = ""
Addproduct.TextBox2 = ""
Addproduct.TextBox3 = ""
Addproduct.TextBox4 = ""
Addproduct.TextBox5 = ""
Sheets("Inventory").Protect Password:="1234"
Savedata.Hide
Addproduct.Hide
End Sub