반응형
Excel VBA를 사용하여 워크시트 이름 가져오기
다음을 만들고 싶습니다.user-defined
에서 기능하는.Excel
현재 워크시트를 반환할 수 있습니다.나는 그것을 사용할 수 있습니다.
sheetname = ActiveSheet.Name
하지만 이것의 문제는, 그것이 작동하고 갑자기 다른 시트 이름을 얻기 시작한다는 것입니다.예를 들어, 대신에SHEET I LOVE YOU
그것은 돌아옵니다.SHEET I HATE YOU
.
이 문제를 해결할 방법이 있습니까? 아니면 정적일 수 없고 다양하다고 생각하기 때문에 가능할 수도 있습니다.
Function MySheet()
' uncomment the below line to make it Volatile
'Application.Volatile
MySheet = Application.Caller.Worksheet.Name
End Function
이것이 당신이 찾고 있는 기능이어야 합니다.
이것은 나에게 효과가 있습니다.
worksheetName = ActiveSheet.Name
Sub FnGetSheetsName()
Dim mainworkBook As Workbook
Set mainworkBook = ActiveWorkbook
For i = 1 To mainworkBook.Sheets.Count
'Either we can put all names in an array , here we are printing all the names in Sheet 2
mainworkBook.Sheets("Sheet2").Range("A" & i) = mainworkBook.Sheets(i).Name
Next i
End Sub
선택한 시트 표시에 대한 코드 확장 [하나 이상의 시트]입니다.
Sub Show_SelectSheet()
For Each xSheet In ThisWorkbook.Worksheets
For Each xSelectSheet In ActiveWindow.SelectedSheets
If xSheet.Name = xSelectSheet.Name Then
'=== Show Selected Sheet ===
GoTo xNext_SelectSheet
End If
Next xSelectSheet
xSheet.Visible = False
xNext_SelectSheet:
Next xSheet
MsgBox "Show Selected Sheet(s) Completed !!!"
end sub
아래 코드를 사용하여 활성 시트 이름을 가져오고 원하는 이름으로 변경할 수 있습니다.
Sub ChangeSheetName()
Dim shName As String
Dim currentName As String
currentName = ActiveSheet.Name
shName = InputBox("What name you want to give for your sheet")
ThisWorkbook.Sheets(currentName).Name = shName
End Sub
열린 파일 이름으로 시트 이름을 변경해야 합니다.
Sub Get_Data_From_File5()
Dim FileToOpen As Variant
Dim OpenBook As Workbook
Dim currentName As String
currentName = ActiveSheet.Name
Application.ScreenUpdating = False
FileToOpen = Application.GetOpenFilename(Title:="Browse for your File & Import Range", FileFilter:="Excel Files (*.csv*),*csv*")
If FileToOpen <> False Then
Set OpenBook = Application.Workbooks.Open(FileToOpen)
OpenBook.Sheets(1).Range("A1:g5000").Copy
ThisWorkbook.Worksheets(currentName).Range("Aw1:bc5000").PasteSpecial xlPasteValues
OpenBook.Close False
End If
Application.ScreenUpdating = True
End Sub
언급URL : https://stackoverflow.com/questions/19323343/get-a-worksheet-name-using-excel-vba
반응형
'programing' 카테고리의 다른 글
'' 항목이 이미 추가되었습니다. 오류 (0) | 2023.06.14 |
---|---|
Oracle Bug 데이터베이스는 어디에 있습니까? (0) | 2023.06.14 |
django 템플릿의 형식 번호 (0) | 2023.06.14 |
ASP.NET의 POST 메서드에서 데이터 검색 (0) | 2023.06.14 |
Toad에서 저장 프로시저를 디버그하는 방법은 무엇입니까? (0) | 2023.06.14 |