Get a worksheet name using Excel VBA

后端 未结 6 854
名媛妹妹
名媛妹妹 2021-01-08 01:29

I would like to create an user-defined function in Excel that can return the current worksheet. I could use the

sheetname = Activ         


        
相关标签:
6条回答
  • 2021-01-08 01:42

    i need to change the sheet name by the name of the file was opened

    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
    
    0 讨论(0)
  • 2021-01-08 01:43

    This works for me.

    worksheetName = ActiveSheet.Name  
    
    0 讨论(0)
  • 2021-01-08 01:47
    Function MySheet()
    
      ' uncomment the below line to make it Volatile
      'Application.Volatile
       MySheet = Application.Caller.Worksheet.Name
    
    End Function
    

    This should be the function you are looking for

    0 讨论(0)
  • 2021-01-08 01:53
    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
    
    0 讨论(0)
  • 2021-01-08 01:56

    You can use below code to get the Active Sheet name and change it to yours preferred name.

    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
    
    0 讨论(0)
  • 2021-01-08 01:57

    Extend Code for Show Selected Sheet(s) [ one or more sheets].

    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
    
    0 讨论(0)
提交回复
热议问题