반응형
FileDialog를 사용하여 워크북을 열고 Excel VBA에서 조작합니다.
Excel 매크로를 사용하는 방법을 배우고 있으며 다음 코드를 찾았습니다.
Dim fd As Office.FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.AllowMultiSelect = False
.Title = "Please select the file to kill his non colored cells"
.Filters.Add "Excel", "*.xls"
.Filters.Add "All", "*.*"
If .Show = True Then
txtFileName = .SelectedItems(1)
End If
End With
이 코드를 누르면 파일 대화 상자가 열립니다.이전에 열어본 엑셀 파일을 덮어쓰지 않고 어떻게 하면 선택한 엑셀 파일을 열 수 있습니까?
프랭크, 고마워요. 알았어요.여기 작업 코드가 있습니다.
Option Explicit
Private Sub CommandButton1_Click()
Dim directory As String, fileName As String, sheet As Worksheet, total As Integer
Dim fd As Office.FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.AllowMultiSelect = False
.Title = "Please select the file."
.Filters.Clear
.Filters.Add "Excel 2003", "*.xls?"
If .Show = True Then
fileName = Dir(.SelectedItems(1))
End If
End With
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Workbooks.Open (fileName)
For Each sheet In Workbooks(fileName).Worksheets
total = Workbooks("import-sheets.xlsm").Worksheets.Count
Workbooks(fileName).Worksheets(sheet.Name).Copy _
after:=Workbooks("import-sheets.xlsm").Worksheets(total)
Next sheet
Workbooks(fileName).Close
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
제가 당신의 질문을 오해하지 않는 한, 당신은 읽기 전용 파일을 열면 됩니다.여기 어떠한 확인도 없이 간단한 예가 있습니다.
사용자로부터 파일 경로를 가져오려면 다음 기능을 사용합니다.
Private Function get_user_specified_filepath() As String
'or use the other code example here.
Dim fd As Office.FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.AllowMultiSelect = False
fd.Title = "Please select the file."
get_user_specified_filepath = fd.SelectedItems(1)
End Function
그런 다음 파일 읽기 전용을 열고 변수에 할당합니다.
dim wb as workbook
set wb = Workbooks.Open(get_user_specified_filepath(), ReadOnly:=True)
언급URL : https://stackoverflow.com/questions/25153342/open-a-workbook-using-filedialog-and-manipulate-it-in-excel-vba
반응형
'programing' 카테고리의 다른 글
손상된 Git 저장소를 어떻게 고칠 수 있습니까? (0) | 2023.08.29 |
---|---|
UIScrollView에서 수직 스크롤 비활성화 (0) | 2023.08.29 |
spring-boot-maven-plugin과 maven-compiler-plugin의 차이점은 무엇입니까? (0) | 2023.08.29 |
HTML 테이블의 맨 위 행만 고정(고정 테이블 머리글 스크롤) (0) | 2023.08.29 |
루트가 아닌 다른 사용자로 도커 컨테이너에 연결 (0) | 2023.08.29 |