나는이 문제를 해결하기 위해 내 검색 기능을 다 써 버렸습니다.변수 사용자 정의 경로를 기반으로 닫힌 통합 문서에서 데이터 복사
- 사용자가 매크로 사용 Excel에서 입력하는 사용자 또는 원하는 통합 문서의 선택 파일 경로를
- 즉시 프롬프트가 표시됩니다 파일 열립니다 여기에 내가하고 싶은 것이의 개요입니다. 두 파일을 선택해야하며 파일 이름이 일치하지 않을 수 있습니다.
- 파일 위치를 입력하면 첫 번째 파일 선택의 첫 번째 워크 시트가 매크로 사용 통합 문서의 첫 번째 워크 시트에 복사되고 첫 번째 두 번째 파일 선택의 워크 시트가 매크로 사용 통합 문서의 두 번째 워크 시트에 복사됩니다.
ADO에 대한 언급이 많이 있는데, 아직 익숙하지 않습니다.
편집 : 닫힌 파일에서 데이터를 가져 오는 코드를 발견했습니다. 변수 결과를 반환하려면 범위를 조정해야합니다.
Private Function GetValue(path, file, sheet, ref)
path = "C:\Users\crathbun\Desktop"
file = "test.xlsx"
sheet = "Sheet1"
ref = "A1:R30"
' Retrieves a value from a closed workbook
Dim arg As String
' Make sure the file exists
If Right(path, 1) <> "\" Then path = path & "\"
If Dir(path & file) = "" Then
GetValue = "File Not Found"
Exit Function
End If
' Create the argument
arg = "'" & path & "[" & file & "]" & sheet & "'!" & _
Range(ref).Range("A1").Address(, , xlR1C1)
' Execute an XLM macro
GetValue = ExecuteExcel4Macro(arg)
End Function
Sub TestGetValue()
path = "C:\Users\crathbun\Desktop"
file = "test"
sheet = "Sheet1"
Application.ScreenUpdating = False
For r = 1 To 30
For C = 1 To 18
a = Cells(r, C).Address
Cells(r, C) = GetValue(path, file, sheet, a)
Next C
Next r
Application.ScreenUpdating = True
End Sub
지금, 나는 즉시 파일 경로를 정의하는 메시지가 사용자에게 표시하고 해당 파일에서 데이터를 가져옵니다 명령 단추 또는 사용자 정의 폼이 필요합니다.
hav 이미 코드를 만들었습니까? 어디서 붙어 있니? – JMax
@JMax - 현재 사용할 수있는 코드를 추가했습니다. 별로 아니지만 나는 올바른 방향으로 나아갈 지 확신하지 못합니다. – user955289
@ user955289 : 두 파일을 열지 않으려는 이유가 무엇입니까?이 코드는 workbooks.open()을 사용하여 파일에서 시트를 가져올 때 직선적이며 간단합니다. –