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 60469
362 엑셀일반 값더하기 단축기는 없나요? [4] [레벨:1]azess 2013-12-12 4015
361 아별님~~도와주세용... [2] [레벨:1]hope so 2009-07-09 4002
360 엑셀일반 엑셀로 임대료 계산 질문입니다. file [2] [레벨:5]정화 2013-07-31 3997
359 셀서식(표시형식) 서식이 걸려있는곳에 셀병합시 서식값 나올수 있는 방법. imagefile [4] [레벨:1]하늘아래인연 2013-09-26 3989
358 배열수식 엑셀 수식 질문이요 file [1] [레벨:4]요셉 2013-04-09 3984
357 VLookup 앞시트에서 지정 값 정하여 계산 할 수 있나요? file [5] [레벨:3]이구람 2012-11-12 3976
356 엑셀일반 엑셀에서 가로 세로 바꾸기 입니다. file [2] [레벨:4]pgpoch 2011-12-30 3972
355 피벗테이블 시간표 관리, 피벗 부분합의 활용 질문?? file [5] [레벨:1]메타포 2011-09-05 3934
354 기타 엑셀파일 용량 문제. [1] [레벨:3]jjay98 2012-10-30 3925
353 엑셀일반 칸에 맞게 붙여넣기 하는법이 궁금해요! imagefile [1] [레벨:1]냠냠이 2015-01-04 3923
352 엑셀수식 indirect 함수사용시 [2] [레벨:1]엑셀짱 2011-08-09 3910
351 함수 질문드립니다. (크거나 같은 값 중 가장 근접한 값 찾기) [2] [레벨:3]rynoel 2011-04-26 3902
350 엑셀일반 엑셀 그래프 관련 질문 [2] [레벨:4]나카타 2013-07-22 3898
349 아뵬님 질문있습니다. [1] [레벨:6]ryanoh 2010-09-16 3896
348 피벗테이블 피벗에서 중복값을 하나의 숫자로 판단하여 표기하는 방법 file [3] [레벨:1]삽질대마왕 2014-07-25 3887
347 셀서식(표시형식) 엑셀 내용 전환 문의 file [8] [레벨:1]neo 2013-06-10 3886
346 엑셀일반 틀고정 질문입니다. file [3] [레벨:5]정화 2011-08-12 3883
345 엑셀일반 엑셀 질문있습니다~! [1] [레벨:1]얀수기 2013-03-15 3872
344 엑셀일반 가입인사겸 질문올립니다. _ 파일오류,매크로바이러스,데이터손실 복구 방법 [3] [레벨:1]바람길 2011-11-16 3871
343 엑셀일반 시트의 연도별 사용내역 중 각 시트의 해당연도 페이지만 한꺼번에 인쇄하는 법? file [3] [레벨:4]성투은자 2013-04-02 3859