저는 초보자 VBA 프로그래머입니다. 나는 일들 사이의 중단 시간에만 그것을 할 수 있습니다. 어쨌든 나는 나 자신과 동료들을 위해 사건 추적자를 위해 일해 왔으며, 내가 "가져 오기"기능을 추가하려고 시도해 왔던 새로운 기능으로 그것을 업데이트 할 때 그들을 도와 주었다.다른 스프레드 시트의 셀을 활성 시트로 복사 (가져 오기)
각 달마다 별도의 워크 시트가 있습니다 (1 월에서 12 월까지 및 OT라고하는 초과 근무 시간을위한 다른 시트). 코드는 올바른 시트에서 복사하여 같은 이름의 시트에 붙여 넣어야합니다.
그래도 제대로 작동하지 않습니다. 이것은 내가 지금까지 가지고있는 것입니다 :
'Import Incident
Sub ImportIncidents()
Dim OpenFileName As String
Dim wb As Workbook
Dim ws As Worksheet
Dim myRng As Range
Dim MyWB As Workbook
'store the current workbook in a variable
Set MyWB = ActiveWorkbook
'Select and Open workbook
OpenFileName = Application.GetOpenFilename
If OpenFileName = False Then
MsgBox ("Import Failed!")
Exit Sub
End If
Set wb = Workbooks.Open(OpenFileName, UpdateLinks:=0)
'Get data
wb.Activate
For Each ws In wb.Worksheets
Set myRng = ws.Range("A6:AV45")
myRng.Copy
MyWB.Activate
Set myRng =
wb.Activate
Next
MsgBox ("Import Complete!")
End Sub
아무도 나를 놀라게 할 수 있다면. 내 VBA 책을 제대로 읽은 후 (VBA Dummy, ahah!) 작업을 마칠 수있을 것이라고 확신합니다. 그러나 나는 많은 시간을 할 때 앉아서 주말을 찾는 데 어려움을 겪고 있습니다. .
도움 주셔서 감사합니다. 그 코드를 내 코드에 넣었지만 형식 불일치 오류가 발생합니다 (Office 2013에서는이 문제가 어디에 구체적으로 발생하는지 알려주지 않습니다). 내가 일하고 구형 버전에서이 오류가 발생했을 때 "If OpenFileName = False Then"행이 멈출 곳을 강조 표시 한 것 같습니다. 나는 전에 이것을 처리하지 않았다. – JaayB
'Dim OpenFileName As String'을 'Dim OpenFileName As Variant'로 대체하십시오. Application.GetOpenFilename 함수는 Variant 형식을 반환합니다. –