Page 1 of 1

ต้องการสร้างปุ่ม update ราคาสินค้า

Posted: Fri May 13, 2011 8:59 am
by sc201105
รบกวนช่วยสอนวิธีการสร้างปุ่มเพื่อ update ราคาสินค้าตามรหัสสินค้า ดังนี้
โดยที่ผมมีข้อมูลดังนี้
1. Sheet1 เป็น Sheet หลัก ซึ่งประกอบด้วย รหัสสินค้า และราคาสินค้าต่อหน่วย
2. Sheet2 เป็น Sheet ที่ key รหัสสินค้า และราคาต่อหน่วยที่เปลียนแปลงไป
3. ต้องการนำสร้างปุ่มที่สามารถกด แล้วนำข้อมูลที่มีการเปลี่ยนแปลงราคาตามรหัสสินค้าใน sheet2 มาใส่แทน
ราคาสินค้าต่อหน่วยใน sheet1 พร้อมทั้งแสดงให้เห็นว่าราคาสินค้าของรายการใดมีการเปลี่ยนแปลงไปใน sheet1

ปัญหาที่อยากรบกวนให้ช่วยแ้ก้ไขคือ
1. ผมจะทำอย่างไรในการเขียน marco หรือ Vba ให้ปุ่มนั้นทำงานอย่างที่ต้องการตามข้อ 3 ข้างต้น
2. จะให้คำสั่งนี้สามารถค้นหาเองได้หรือไม่ว่าเรามีราคาเปลี่ยแปลงไปกี่รายการ เช่น วันนี้อาจจะมีการเปลี่ยนแปลงไป 1 รายการ ก็จะหาเอง แต่หากวันรุ่งขึ้นเปลี่ยแปลงไป 5 รายการ ต้องการให้มันวิ่งหา 5 รายการดังกล่าว ไม่รู้ว่าจะให้มันนับจำนวน row ที่มีข้อมูลการเปลี่ยนแปลงก่อนนำไป update ใน sheet1 ทั้ง 5 รายการอย่างไร
3. หากรหัสสินค้าที่ใส่ไปไม่พบว่ามีอยู่ใน sheet1 ให้แสดงรายการรหัสสินค้าดังกล่าวว่าไม่มีอยู่ในข้อมูล sheet1 พรัอมทั้งบอกด้วยว่า เป็นรหัสสินค้าอะไรที่ไม่มี

ขอบคุณครับ

Re: ต้องการสร้างปุ่ม update ราคาสินค้า

Posted: Fri May 13, 2011 11:23 am
by snasui
:D ปกติการ Update เราจะมีการระบุวันที่ เวลาไว้ด้วยครับ และส่วนใหญ่ข้อมูลที่ Update เราจะเพิ่มรายการเข้าไปต่อท้ายรายการเดิม มีวันเวลากำกับ แทนการการเปลี่ยนแปลงราคาของเดิมที่มีอยู่แล้ว เพื่อจะติดตามได้ว่ามีการเปลี่ยนแปลงไปกี่ครั้ง วันไหนบ้าง เป็นประโยชน์ในการตัดสินใจในภายหลัง

ส่วนหากราคาเปลี่ยนแล้วให้เปลี่ยนตัวเลขเดิมก็สามารถทำได้ และจะให้รู้ได้อย่างไรว่าเปลี่ยนแปลงไปก็สามารถเพิ่มคอลัมน์เพื่อระบุว่าได้ถูก Update ไปเมื่อใดได้ครับ และกรณีที่ไม่พบว่ามีสินค้านั้นอยู่ในฐานข้อมูล จะให้เพิ่มเข้าไปต่อท้ายข้อมูลที่มีอยู่เดิมหรือไม่ครับ :?:

Re: ต้องการสร้างปุ่ม update ราคาสินค้า

Posted: Fri May 13, 2011 1:43 pm
by sc201105
อาจารย์ครับ หากว่าไม่พบรายการรหัสสินค้าดังกล่าวก็ให้ทำการเพิ่มต่อท้ายเข้าไปครับผม

ขอบคุณมากๆ ครับผม

Re: ต้องการสร้างปุ่ม update ราคาสินค้า

Posted: Fri May 13, 2011 11:22 pm
by snasui
:D ลองดู Code ด้านล่างครับ

Code: Select all

Sub ChangePrice()
Dim i As Integer, j As Integer, k As Integer
For i = 2 To Worksheets("รหัสหนังสือและราคาที่เปลี่ยนแปล") _
    .Range("A65536").End(xlUp).Row
    k = 0
        For j = 2 To Worksheets("รหัสหนังสือและราคา") _
            .Range("A65536").End(xlUp).Row
                If Worksheets("รหัสหนังสือและราคา").Cells(j, 1) _
                    = Worksheets("รหัสหนังสือและราคาที่เปลี่ยนแปล").Cells(i, 1) Then
                    k = j
                End If
         Next j
         If k > 1 Then
                    Worksheets("รหัสหนังสือและราคา").Cells(k, 2) _
                    = Worksheets("รหัสหนังสือและราคาที่เปลี่ยนแปล").Cells(i, 2)
                    Worksheets("รหัสหนังสือและราคา").Cells(k, 3) = Date
            Else
                    Worksheets("รหัสหนังสือและราคา").Range("A65536").End(xlUp).Offset(1, 0) _
                    = Worksheets("รหัสหนังสือและราคาที่เปลี่ยนแปล").Cells(i, 1)
                    Worksheets("รหัสหนังสือและราคา").Range("A65536").End(xlUp).Offset(0, 1) _
                    = Worksheets("รหัสหนังสือและราคาที่เปลี่ยนแปล").Cells(i, 2)
                    Worksheets("รหัสหนังสือและราคา").Range("A65536").End(xlUp) _
                        .Offset(0, 2) = Date
            End If
    Next i
End Sub

Re: ต้องการสร้างปุ่ม update ราคาสินค้า

Posted: Tue May 17, 2011 6:33 am
by sc201105
ขอบคุณมากครับอาจารย์ ขออภัยที่เข้ามาตอบช้าไป ผมขอเอาไปทดลองดูก่อนหากติดขัดประการใดจะเรียนรบกวนสอบถามใหม่อีกครั้ง
ขอบคุณอีกครั้งอย่างสูง