이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.
안녕하세요 날씨가 정말 덥네요.
그래도 오늘은 비가 많이 와서 좀 낫군요. 이제 더위도 한풀 꺽일때가 되었습니다.
잘 지내시죠?
오늘은 VBA 에서 엑셀 파일을 생성하는 방법을 문의 드립니다.
새로운 엑셀 파일을 지정한 폴더에 생성하고 그 파일안에 먼저 열려있는 파일의 데이터를 뿌려주고 싶은데 가능한지요?
좀더 설명을 드리면 A 파일에 모든 데이터가 있고 필요에 따라 (명령버튼의 클릭 같이) 엑셀 파일을 정해진 파일이름으로 생성한 뒤 (파일 B) A 파일의 데이터를 파일 B에 Write 하고 저장하고 싶은 겁니다.
다른 책에서는 이미 존재하는 파일을 찾고 여는 방법은 있는데 신규 파일의 생성은 보지 못한 것 같습니다.
궁금합니다.
그럼 수고하세요.
광복절날 쉬지도 못하고 회사에서 일을 하는...
엑셀대단해 드림.
댓글 '4'
오랫만에 다시 보는 코드 ㅎㅎ
겸사 겸사.. 특정 경로의 폴더를 순차적으로 만들어주는 코드를 정리해봤습니다.
Sub abMakeFolderPath()
'### Created by abyul.com 2012.08.16
Dim strPath As String: strPath = "C:\Secret\Hot\Cool\"
If Right(strPath, 1) <> "\" Then strPath = strPath & "\"
Dim i As Integer, intPosition As Integer: intPosition = 4
For i = 1 To UBound(Split(strPath, "\")) - 1
If Dir(Left(strPath, InStr(intPosition, strPath, "\")), vbDirectory) = Empty Then
MkDir Left(strPath, InStr(intPosition, strPath, "\"))
End If
intPosition = InStr(intPosition, strPath, "\") + 1
Next i
End Sub
이 코드를 아래 게시물에서 참조하셨네욤 ㅎㅎ
신기 신기.. ㅎㅎ
https://link2me.tistory.com/695?fbclid=IwAR0_uEl0gEichRqgJ74L7ICbHkF97ATdivIy66KOV77urBdS2Vs7fHxOyBI
엑셀대단해님~ 안녕하세요?
신규파일의 생성은 의외로 쉽습니다.
Workbooks.Add하셔서 새로운 웍북을 만드시고.. 원하시는 경로에 SaveAs해주시면 새로운 파일이 생깁니다.
특정 경로에 파일이 있으면 Open해주고 아니면 새로 만들어주는 코드입니다.
해당 경로에 해당하는 폴더가 없으면 차례 차례 만들어 주는 코드도 포함되어 있사오니..
공부하시기 바랍니다. ^^
Sub openOrMakeFile()
'### Created by abyul.com 2012.08.16
Dim strPath As String, strFile As String
strPath = "D:\Secret\Hot\Cool\"
strFile = "아별닷컴쵝오.xlsx"
If Right(strPath, 1) <> Application.PathSeparator Then strPath = strPath & Application.PathSeparator
Dim i As Integer, intPosition As Integer: intPosition = 4
For i = 1 To UBound(Split(strPath, "\")) - 1
If Dir(Left(strPath, InStr(intPosition, strPath, "\")), vbDirectory) = Empty Then
MkDir Left(strPath, InStr(intPosition, strPath, "\"))
End If
intPosition = InStr(intPosition, strPath, "\") + 1
Next i
If Dir(strPath & strFile) = Empty Then
Workbooks.Add
ActiveWorkbook.SaveAs strPath & strFile
Else
Workbooks.Open strPath & strFile
End If
End Sub