
ช่วยทบทวนอีกรอบว่าเซลล์ N1 ที่ชีท Enterthedata ใช้เพื่อให้หมายเลขลำดับถัดไปที่จะบันทึกใช่หรือไม่ครับ
ถ้าใช่ Code นี้ใช้ไม่ได้ครับ
Code: Select all
With Worksheets("Enterthedata")
.Range("N1") = .Range("N1") + 1
End With
เนื่องจากเป็น Code สำหรับการบันทึกเพียงคนเดียวและเป็นการให้ลำดับไว้ล่วงหน้า
ค่าที่จะนำมาบันทึกจะต้องเป็นค่าลำดับสุดท้ายใน Database โดยดึงค่านั้นมาแล้วบวกด้วย 1 เพื่อที่จะให้เป็นหมายเลขถัดไปแล้วนำไปบันทึก
ค่าหมายเลขสุดท้ายเราได้มาแล้วด้วย Code
Code: Select all
e = wbShare.sheets("abcd").range("a" & rows.count).end(xlup).value
หากต้องการให้เป็นหมายเลขถัดไปก็แค่บวกด้วย 1 ก็จะกลายเป็น
Code: Select all
e = wbShare.sheets("abcd").range("a" & rows.count).end(xlup).value+1
ซึ่งจะนำไปเป็นหมายเลขเอกสารแทนค่าใน N1 ของชีท Enterthedata ครับ
ส่วนเซลล์ N1 ไม่จำเป็นต้องใช้สำหรับเพื่อการนี้อีกต่อไป แต่จะใช้เพื่อการใดก็แล้วแต่เห็นสมควรครับ
ส่วนการนำค่า e ไปบันทึกใน Database ให้ลองเขียนมาเอง ติดตรงไหนค่อยถามกันต่อครับ