나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 처리 (sdc0713)

추천:  2
파일:     조회:  935
제목:   메크로 런타임에러
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(Microsoft 365용 MSO(버전 2212 빌드 16.0.15928.20196) 64비트

* 아래줄에 질문을 작성하세요 >>

Sub RenameSheet()

Dim rs As Worksheet
For Each rs In Sheets
rs.Name = rs.Range("P5")
Next rs
End Sub

위의 매크로를 작성해서 돌리면
rs.Name = rs.Range("P5") 에서 런타임에러가 납니다
무엇이 잘못됐는지 알려주시면 감사하겠습니다
 
[불량 게시물 신고]  
잡초P5셀이 비어있거나 사용할수 없는 문자인지 확인하세요.
1.  비어 있습니다.
2.  31자를 넘을 수 없습니다.
3.  / \ ? * : [ ]
4. 아포스트로피(')로 시작하거나 끝날 수 없지만 이름의 텍스트나 숫자 사이에는 사용할 수 있습니다.
5. "History"라고 지정할 수 없습니다. Excel에서 내부적으로 사용하는 예약어입니다.
01-18 (15:13)
삭제 ■신고
처리'1004' 런타임 오류가 발생하였습니다:
'Name' 메서드('_Worksheet' 개체의)에서 오류가 발생했습니다"

-> 표시되는 오류입니다(비어있지않고, 31자를 넘지않고, 특수문자는 사용하지 않습니다)
검토바랍니다 수고하세요
01-18 (16:39)
삭제 ■신고
잡초For Each rs In Sheets을 For Each rs In worksheets로 변경하여 보시고, 그래도 오류가 발생하면 오류파일을 첨부하여 주세요...01-18 (19:24)
삭제 ■신고
처리수고하십니다
말씀대로 Sheets을 worksheets로 변경해서 돌려도
같은 오류메세지가 납니다
01-19 (08:56)
삭제 ■신고
손님01-21 (14:27)
삭제 ■신고
        
  

작성일 : 2023-01-18(13:04)
최종수정일 : 2023-01-18(13:04)