Pozdrav,
u Excelu mi treba makro kojim bi kreirao keyboard shortcut za pomicanje po sheetovima.
zasad imam ovo:
Sub next_sheet()
'
' next_sheet Macro
'
' Keyboard Shortcut: Ctrl+r
'
ActiveSheet.Next.Select
End Sub
međutim, problem je kad sam na zadnjem sheetu, i treba se vratiti na početni (prvi) sheet. tada javlja error.
Excel-shortcut za pomicanje po sheetovima
- poruka: 12
- |
- čitano: 2.062
- |
- moderatori:
Lazarus Long, XXX-Man, vincimus
- +/- sve poruke
- ravni prikaz
- starije poruke gore
Sub next_sheet()
'
' next_sheet Macro
'
' Keyboard Shortcut: Ctrl+r
'
Dim brojListova As Integer
brojListova = Sheets.Count
if activesheet.count <= brojListova then
ActiveSheet.Next.Select
else
Sheet(1).Select
endif
End Sub
ovo sam nabrzinu iz glave .... nadam se da prolazi...
;-)
ne radi. Kaže da Sheet(1) nije definiran.
ne radi. Kaže da Sheet(1) nije definiran.
onda stavi:
Sheet(Sheets.Count-(Sheets.count-))
malo "glupo...
budem kasnije probao na kompu.. ovo je opet iz glave
Rješio sam problem.
Za pomicanje unaprijed:
Sub next_sheet()
'
' next_sheet Macro
'
' Keyboard Shortcut: Ctrl+r
'
On Error GoTo firstsheet
ActiveSheet.Next.Select
Exit Sub
firstsheet:
Sheets(1).Select
End Sub
Za pomicanje unatrag:
Sub previous_sheet()
'
' previous_sheet Macro
'
' Keyboard Shortcut: Ctrl+e
'
On Error GoTo lastsheet
ActiveSheet.Previous.Select
Exit Sub
lastsheet:
Sheets(3).Select
End Sub
Za pomicanje unatrag ne znam kako bih definirao "zadnji sheet", pa sam stavio 3.po redu. Nije savršeno, ali je dovoljno dobro za mene.
evo ti kod koji se stalno vrti u krug... tj. kada dode do zadnjeg lista vrati se na prvi.
oprosti sto nisam ranije napisao, ali jednostavno nisam stigao...
Sub pomicanje()
Dim brojListova As Integer
brojListova = Sheets.Count
Dim trenutniList As Integer
trenutniList = ActiveSheet.Index
If trenutniList < brojListova Then
ActiveSheet.Next.Select
Else
Sheets(1).Select
End If
End Sub
ali ti imas dva makroa za taj posao a ja sam ti stavio jedan.. malo je brzi...
kako ond azelis? odvojeno ili zajedno??
Treba mi odvojeno, jer imam 2 hotkey-a (Ctrl+E za nazad i Ctrl+R za naprijed).
Treba mi odvojeno, jer imam 2 hotkey-a (Ctrl+E za nazad i Ctrl+R za naprijed).
ak+jde budem ti malo kasnije prebacio u 2..
;-)
evo makroica (VBA). oprosti na cekanju...
Sub pomicanje_naprijed()
Dim brojListova As Integer
brojListova = Sheets.Count
Dim trenutniList As Integer
trenutniList = ActiveSheet.Index
If trenutniList < brojListova Then
ActiveSheet.Next.Select
Else
Sheets(1).Select
End If
End Sub
Sub pomicanje_natrag()
Dim brojListova As Integer
brojListova = Sheets.Count
Dim trenutniList As Integer
trenutniList = ActiveSheet.Index
If trenutniList = 1 Then
Sheets(Sheets.Count).Select
Else
Sheets(ActiveSheet.Index - 1).Select
End If
End Sub
Radi odlično.
Hvala na trudu.