ตัวอย่าง: ฉันได้เลือกแถวและคอลัมน์ใด ๆ สมมุติว่า D6 ข้อมูลที่ฉันค้นหาอยู่ในคอลัมน์ H ดังนั้นฉันต้องการให้แมโครคัดลอกข้อมูลในแถว 6 และคอลัมน์ H เช่น H6
ถ้าฉันเลือก G14 แมโครจะคัดลอกข้อมูลในเซลล์ H14 เป็นต้น
ตัวอย่าง: ฉันได้เลือกแถวและคอลัมน์ใด ๆ สมมุติว่า D6 ข้อมูลที่ฉันค้นหาอยู่ในคอลัมน์ H ดังนั้นฉันต้องการให้แมโครคัดลอกข้อมูลในแถว 6 และคอลัมน์ H เช่น H6
ถ้าฉันเลือก G14 แมโครจะคัดลอกข้อมูลในเซลล์ H14 เป็นต้น
คำตอบ:
Range("H" & ActiveCell.Row).Copy
ActiveCell.PasteSpecial
เรียกว่าบน Worksheet_SelectionChange
หากคุณต้องการให้ค่าใช้งานเพียงกำหนด
Range("H" & ActiveCell.Row).Value
ให้กับตัวแปรและใช้ในการคำนวณของคุณและกลับไปยังตำแหน่งที่คุณต้องการ
ฉันเขียนมาโครสำหรับเรื่องนั้น มันจะคัดลอกเซลล์ที่เลือกและวางข้อมูลในคอลัมน์ H ที่แถวเดียวกันเสมอ
Sub NewMacro()
Selection.Copy
Cells(ActiveCell.Row, 8).Select
ActiveSheet.Paste
End Sub
คุณมีเวลาสองสามวันแล้วที่อาจจะได้คำตอบแล้ว แต่การขยายคำตอบที่แนะนำไปแล้วฉันคิดว่าด้านล่างจะทำสิ่งที่คุณถาม:
Sub CopyFromColH()
'Save the current location
Dim TargetCell As Range
Set TargetCell = ActiveCell.Range("A1")
'Copy from same row in H
Cells(ActiveCell.Row, 8).Select
Selection.Copy
'Paste to original location, as saved above
TargetCell.Select
ActiveSheet.Paste
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("U:U")) Is Nothing Then
Cancel = True
If Application.CountIf(Sheets("AA").Range("L:L"), Target.Value) = 0 Then
Cells(Target.Row, 12).Value = Target.Value
End If
End If
End Sub