Page 1 of 1
Code VB เปลี่ยนข้อมูลในเซลโดยดึงมาจากอีก Sheet
Posted: Mon Sep 18, 2023 11:59 pm
by tigerwit
จากไฟล์ที่แนบมา
ที่ Sheet Password ต้องการให้เซล A1 เปลี่ยนข้อมูลไปทุกครั้งที่ เซล A2 มีการเปลี่ยนแปลง
โดยให้ดึงข้อมูลจาก Sheet ListPW ในคลอลัมน์ A แสดง
ต้องปรับแก้ไข Code อย่างไรครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$2" Then
Sheet3.Range("A1").Value = Sheet2.Range("A1").Value
End If
End Sub
Re: Code VB เปลี่ยนข้อมูลในเซลโดยดึงมาจากอีก Sheet
Posted: Tue Sep 19, 2023 9:08 am
by snasui

กรุณาสมมุติค่าที่เปลี่ยนไปและข้อมูลที่ดึงมาแสดง พร้อมอธิบายเงื่อนไขในการดึงข้อมูลประกอบมาด้วยจะได้เข้าใจตรงกันครับ
Re: Code VB เปลี่ยนข้อมูลในเซลโดยดึงมาจากอีก Sheet
Posted: Tue Sep 19, 2023 10:01 am
by tigerwit

กรุณาสมมุติค่าที่เปลี่ยนไปและข้อมูลที่ดึงมาแสดง พร้อมอธิบายเงื่อนไขในการดึงข้อมูลประกอบมาด้วยจะได้เข้าใจตรงกันครับ
สมมุติว่า ค่าเริ่มต้นในชีท password ของเซล A1 คือ PasswordPassword ค่าใชเซล A2 คือ โรงเรียนบ้านดอนเสาธง
หากค่าในเซล A2 เปลี่ยนไป เช่นจาก โรงเรียนบ้านดอนเสาธง เป็น โรงเรียนบ้านหนองสูง
ก็ให้ค่าในเซล A1 เปลี่ยนไป โดยไปดึงค่าจากชีท ListPW ที่เซล A1 มาแสดง
และต่อหากค่าในเซล A2 เปลี่ยนไปอีกครั้ง จาก โรงเรียนบ้านหนองสูง ไปเป็น โรงเรียน..............
ก็ให้ ก็ให้ค่าในเซล A1 เปลี่ยนไป โดยไปดึงค่าจากชีท ListPW ที่เซล A2 มาแสดง

Re: Code VB เปลี่ยนข้อมูลในเซลโดยดึงมาจากอีก Sheet
Posted: Tue Sep 19, 2023 11:23 am
by snasui

ตัวอย่าง Code ครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$2" Then
Sheet3.Range("A1").Value = Sheet2.Range("A1").Offset(Sheet2.Range("b1").Value, 0).Value
Sheet2.Range("b1").Value = Sheet2.Range("b1").Value + 1
End If
End Sub
Re: Code VB เปลี่ยนข้อมูลในเซลโดยดึงมาจากอีก Sheet
Posted: Tue Sep 19, 2023 11:37 am
by puriwutpokin
แบบนี้หรือเปล่าครับ ไม่ค่อยเข้าใจ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$2" Then
If Sheet3.Range("A1").Value = "PasswordPassword" Then
Sheet3.Range("A1").Value = Sheet2.Range("A1").Value
Else
Sheet3.Range("A1").Value = Sheet2.Range("A1"). _
Offset(Application.Match(Sheet3.Range("A1").Value, Sheet2.Range("A1:A99").Value, 0), 0)
End If
End If
End Sub
Re: Code VB เปลี่ยนข้อมูลในเซลโดยดึงมาจากอีก Sheet
Posted: Tue Sep 19, 2023 12:07 pm
by tigerwit
ขอบคุณทั้งสองท่านครับ