Excel에서 매크로를 가져 오려고합니다.Excel VBA 하나의 워크 시트에서 다른 워크 시트로 루프로 일치 정보 복사
지금 당장 "Form"이라는 3 개의 열이있는 워크 시트가 있습니다 - 1 행의 제목은 A = 양식 번호, B = 양식 이름, C = 부품입니다. 또한 Ins이라는 워크 시트가 있습니다. 똑같은 표제와 이미 정보로 채워져있다.
"양식"열 A에 양식 번호를 입력하고 열 B와 C에 대한 정보를 자동으로 복사 할 수 있도록 가져 오려고합니다. 코드에서 지금 EntireRow가 있습니다. ,하지만 그것을 특별히 C에서 열 A로만 복사 할 수 있으면 선호 할 것이지만 어떻게 생각할 수는 없습니다.
Private Sub Auto()
Application.ScreenUpdating = False
Dim wks1 As Worksheet, wks2 As Worksheet
Dim j As Integer
Dim i As Integer
Set wks1 = Sheets("Forms")
Set wks2 = Sheets("Ins")
lastline = wks1.UsedRange.Rows.Count
For i = 2 To lastline
wks2.Cells(1, 1).CurrentRegion.AutoFilter
wks2.Cells(1, 1).CurrentRegion.AutoFilter 1, wks1.Cells(i, 1).Value
wks2.Cells(1, 1).CurrentRegion.EntireRow.Copy wks1.Cells(i, 1)
wks2.Cells(1, 1).CurrentRegion.AutoFilter
Next i
End Sub
'A'열에 'Form Name'을 입력하고 'B'와 'C'가 자동으로 채워지는 것을 알고 있습니다. *'나는 지금 EntireRow 코드를 가지고 있지만, 특별히 C 열에서 C 열까지만 복사 할 수 있으면 좋겠지 만, 어떻게 생각할 수 없습니까? "* 당신은 자세히 설명 할 수 있습니까? –
워크 시트의 A 열에 각 양식의 인스턴스가 하나만 있습니까? 왜 VBA와 루프에서이 작업을 수행해야합니까? 왜 Vlookup이나 Index/Match를 사용하지 않는가? – user2140261
Tim이 아래의 저를 위해 EntireRow 문제를 해결했습니다 ... 지금 내가 가지고있는 문제는 단지 헤더가 복사되고 있다는 것입니다. 레코드를 유지하기 위해 복사 된 값이 필요하기 때문에 Match를 사용할 수 없습니다. 때때로 ins의 값이 변경됩니다 – Amaress