1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

안녕하세요 날씨가 정말 덥네요.

그래도 오늘은 비가 많이 와서 좀 낫군요. 이제 더위도 한풀 꺽일때가 되었습니다.

잘 지내시죠?


오늘은 VBA 에서 엑셀 파일을 생성하는 방법을 문의 드립니다.

새로운 엑셀 파일을 지정한 폴더에 생성하고 그 파일안에 먼저 열려있는 파일의 데이터를 뿌려주고 싶은데 가능한지요?

좀더 설명을 드리면 A 파일에 모든 데이터가 있고 필요에 따라 (명령버튼의 클릭 같이) 엑셀 파일을 정해진 파일이름으로 생성한 뒤 (파일 B) A 파일의 데이터를 파일 B에 Write 하고 저장하고 싶은 겁니다.


다른 책에서는 이미 존재하는 파일을 찾고 여는 방법은 있는데 신규 파일의 생성은 보지 못한 것 같습니다.

궁금합니다.


그럼 수고하세요.

광복절날 쉬지도 못하고 회사에서 일을 하는...

엑셀대단해 드림.


댓글 '4'

profile

[레벨:30]아별

2012.08.16 16:46:29
*.104.126.21

엑셀대단해님~ 안녕하세요?

 

신규파일의 생성은 의외로 쉽습니다.

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

 

profile

[레벨:30]아별

2019.06.05 21:55:14
*.151.52.211

오랫만에 다시 보는 코드 ㅎㅎ

겸사 겸사.. 특정 경로의 폴더를 순차적으로 만들어주는 코드를 정리해봤습니다.


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


profile

[레벨:30]아별

2019.06.05 21:58:45
*.151.52.211

이 코드를 아래 게시물에서 참조하셨네욤 ㅎㅎ

신기 신기.. ㅎㅎ


https://link2me.tistory.com/695?fbclid=IwAR0_uEl0gEichRqgJ74L7ICbHkF97ATdivIy66KOV77urBdS2Vs7fHxOyBI

[레벨:3]엑셀대단해

2012.08.16 18:53:43
*.173.111.3

그렇군요 Workbook을 Add하고 그냥 Save를 하면 되네요.

전 파일을 먼저 생성하고 그 파일에 데이터를 쓰고 저장하고 등등으로 생각을 했는데...

정말 감사합니다.

역쉬 아별님이십니다.

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜sort 조회 수
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 45145
82 문의 합니다 file [1] [레벨:0]호호천사 2009-08-07 4544
81 엑셀- sumif와 sumcol 혼용사용에 대해서 (급해요) [1] 아놔 2009-07-31 13098
80 안녕하세요 ~ 전 생산관리를 그저께부터 갑자기 맡게 되었는데요..기존 담당자가 갑자기 그만두게 되었는데, 기존파일이 손상되서 뭐가 잘못되었는지 모르겠어요 ㅠㅠ 계속 데이타가 틀리구, 함수가 걸려있는데 이해가 안되네요..좀 도와주세요 ㅠㅠ file [1] [레벨:1]홍쓰 2009-07-31 5079
79 날짜입력하면 다음시트의 같은 날짜에 입력되는 방법 좀 알려주세요~ [2] [레벨:2]불주 2009-07-29 4719
78 사진넣기 file [3] [레벨:4]우보천리 2009-07-29 8032
77 작성했던 수식이 모두 이상하게 바뀌었습니다. [1] [레벨:1]kangdongku 2009-07-29 4780
76 피벗테이블 엑신님~한번더 헬프요청들립니다. file [1] [레벨:1]kkabo 2009-07-27 5497
75 아별님~ 두번째 질문을 구체적으로 작성했습니다~^^ [5] [레벨:1]리시안샤스 2009-07-27 4355
74 아별님!! 또 도와주세요...ㅠㅠ imagefile [1] [레벨:1]hope so 2009-07-27 4705
73 매크로 삭제 질문 드려요~ imagefile [6] 우여 2009-07-24 8825
72 VBA .Find 재고 입고월 분석(vba) file [3] [레벨:1]럽웨어 2009-07-24 7932
71 납품서발행.. file [2] [레벨:1]유노 2009-07-23 4721
70 알려주세요... [1] [레벨:1]건혁아빠 2009-07-23 4188
69 피벗테이블 팁부탁드립니다. file [1] [레벨:1]kkabo 2009-07-23 6430
68 엑셀에서 특정일자 구하는 함수식좀 부탁드립니다. file [1] [레벨:1]비비빅 2009-07-22 5768
67 '근무일수를 소수점 월단위표기' 관련 질문 두번째 입니다~^^ [2] [레벨:1]리시안샤스 2009-07-22 5972
66 셀서식(표시형식) 사용자 정의 셀서식에 대해서 [1] [레벨:2]양다원 2009-07-22 6314
65 셀계산시간이 너무 많이 걸립니다. [4] [레벨:1]kangdongku 2009-07-21 6551
64 안녕하세요 엑셀 문서 서식관련 질문사항입니다 file [1] [레벨:1]타이거웅즈 2009-07-21 6474
63 엑셀에서 뒤에 있는 숫자로 정렬하는 방법좀..ㅠㅠ [1] ㄱㄱㄱ 2009-07-21 5317