Skrót klawiaturowy do przełączania między arkuszami w programie Excel

Odpowiedzi:

20

Ctrl+, PgUpaby przejść w lewo.

Ctrl+, PgDnaby przejść w prawo.

Dmatig
źródło
Dotyczy to również Excel 2013 =)
Metafaniel
a na Macbooku bez pgup i pgdown?
theonlygusti
Chciałbym, żeby mieli lepszy skrót, jak Page Upi Page Downzawsze są trudne do znalezienia w różnych laptopów i nie bardzo dogodnie umieszczone na klawiaturze.
Cricrazy,
3

Makra VBA i niestandardowy skrót klawiaturowy do aktywacji pierwszego lub ostatniego arkusza

Jeśli chcesz, aby rzeczywisty skrót klawiaturowy przeskoczył do pierwszego lub ostatniego arkusza roboczego, umieść ten kod w module skoroszytu „OSOBISTE”:

Sub ToFirstSheet()
    Sheets(1).Activate
End Sub

Sub ToLastSheet()
    Sheets(Sheets.Count).Activate
End Sub

Przejdź do karty Deweloper> Makra. Przejdź do tych makr (ToFirstSheet i ToLastSheet). Wybierz jeden, kliknij Opcje i przypisz skrót klawiaturowy. Zrób to samo dla drugiego.

Po zapisaniu tego w skoroszycie „OSOBISTYM” będzie on dostępny w dowolnym pliku programu Excel.

Wbudowane skróty klawiaturowe do aktywacji poprzedniego lub następnego arkusza

Aby przeskoczyć jeden arkusz w lewo lub w prawo, możesz użyć tych domyślnych skrótów klawiaturowych:

Ctrl+PgUp

Ctrl+PgDn

Makra VBA, aby aktywować poprzedni lub następny arkusz

Oto jak to zrobić za pomocą VBA, spróbuj tego:

Sub ToPreviousSheet()
    If ActiveSheet.Index = 1 Then
        ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count).Activate
    Else
        ActiveWorkbook.Worksheets(ActiveSheet.Index - 1).Activate
    End If
End Sub

Sub ToNextSheet()
    If ActiveSheet.Index = ActiveWorkbook.Worksheets.Count Then
        ActiveWorkbook.Worksheets(1).Activate
    Else
        ActiveWorkbook.Worksheets(ActiveSheet.Index + 1).Activate
    End If
End Sub

Funkcje VBA do zwrotu poprzedniego lub następnego arkusza

Użyj tej funkcji, jeśli wolisz uzyskać poprzedni lub następny obiekt arkusza:

Function GetPreviousSheet(ByVal targetSheet As Worksheet) As Worksheet
    Dim targetBook As Workbook
    Set targetBook = targetSheet.Parent

    If targetSheet.Index = 1 Then
        Set GetPreviousSheet = targetBook.Worksheets(targetBook.Worksheets.Count)
    Else
        Set GetPreviousSheet = targetBook.Worksheets(targetSheet.Index - 1)
    End If
End Function

Function GetNextSheet(ByVal targetSheet As Worksheet) As Worksheet
    Dim targetBook As Workbook
    Set targetBook = targetSheet.Parent

    If targetSheet.Index = targetBook.Worksheets.Count Then
        Set GetNextSheet = targetBook.Worksheets(1)
    Else
        Set GetNextSheet = targetBook.Worksheets(targetSheet.Index + 1)
    End If
End Function

Użyj takich funkcji:

Sub EXAMPLE()
    MsgBox "Previous Sheet:  " & GetPreviousSheet(ActiveSheet).Name
    MsgBox "Next Sheet:  " & GetNextSheet(ActiveSheet).Name
    GetNextSheet(ActiveSheet).Activate
End Sub
ChrisB
źródło
Jak mogę uzyskać następny i poprzedni arkusz? Chcę zrobić Sub ToPreviousSheeta ToNextSheet?
theonlygusti
Użyj do tego indeksu arkuszy. Zaktualizuję moją odpowiedź, aby to uwzględnić.
ChrisB
1

Możesz także użyć klawiszy akceleratora, aby przejść do Gookna dialogowego. Następnie możesz wpisać coś takiego, jak foo!A1przejść do lewej górnej komórki w arkuszu o nazwie „foo”. Podczas gdy strona w górę i strona w dół są na ogół szybsze. Jeśli masz dużą liczbę (np. Ponad 20) dobrze nazwanych arkuszy, może to być szybsze. Go działa również dobrze, jeśli w swoich arkuszach masz nazwy tabel.

Naciśnięcie F5 zwykle otwiera Gookno dialogowe.

Jeromy Anglim
źródło