2016-06-13 3 views
1

한 시트에서 다른 시트로 데이터를 복사하는 매크로를 만들고 싶습니다. 문제는 없지만 이모티콘으로 시트의 이름을지었습니다.Excel 워크 시트 이름

나는 그가 시트의 이름은 예를 들어 경우에 사용하는 시트 VBA 알 수있는 방법 : 사전에

감사를

+0

이모티콘으로 시트의 이름을 변경할 수 있다는 사실을 아는 것이 놀랍습니다. 전에는 들어 본 적이 없었습니다 .... – Sixthsense

+0

OP의 'emoji'는 유니 코드 값으로 'AscW'를 사용하여 -10180을 제공합니다. 'Sheet1.Name = ChrW (-10180)'을 시도했지만 '홈'기호를 렌더링하지 않았습니다. ( –

답변

0

당신은에 해당하는 유니 코드 값을 찾기 위해 AscW 기능을 사용할 수 있습니다 항목을 사용하여 올바른 시트 찾기

+0

Asc가 "일반"이 아닌 문자에 대해 적절한 값을 반환하지 않기 때문에 AscW를 사용해야합니다. – RGA

+0

@Robin try 다음 코드를 음수 값으로 사용 - If UnicodeVal <0 Then UnicodeVal = 65536 + UnicodeVal End If ' – RGA

0

주어진 워크 시트의 이름을 찾으려면 워크 시트를 활성화하고 VBA 편집기 (Alt + F11)를 열고 직접 실행 창 (Ctrl + G)을 열고 다음을 입력하십시오.

? ActiveSheet.Name 

어떤 이유로 든 이름이 무의미하고 한 문자로만 구성된 경우 ? Asc(ActiveSheet.Name)을 실행하여 ASCII 값을 가져옵니다. VBA의 ASCII 값을 참조하는

다음과 같은 예를 들어, Chr(putValueHere)를 호출하여 수행 할 수 있습니다 : 당신이 시트의 과다가있는 경우

Worksheets(1).Name = Chr(50) 

, 당신이 코드를 실행하여 그들 모두를 인쇄 할 수 있습니다

Sub SheetNamePrinter 
    For i = 1 To Worksheets.Count 
     Debug.Print Worksheets(i).Name 
    Next i 
End Sub 
+0

감사합니다! 이제 시트 번호를 가져가도 될까요? – Bluesector

+0

예 [Worksheets Collection] (https://msdn.microsoft.com/en-us/library/office/ff821537.aspx)를 사용하면 문자열 인수 (시트의 실제 이름) 또는 정수 인수 (시트 내부의 위치 인덱스)를 사용할 수 있습니다. 수집). – Vegard