IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Libor Šimo (libcosenior):18.10.2020 15:20

Ahoj,
pokúšam sa v triede VBA excel vytvoriť vlastnosť list (sheet) a potom ho v inštancii deklarovať.

Poradí niekto:

Zkusil jsem:

' trieda napr.: clsTrieda

' zadanie vlastnosti
Public NazovListu As Sheet

' zadanie metódy
Sub Prejdi Na List()

Sheets(NazovListu).Select

End Sub

' deklarácia
Dim januar As clsTrieda
    Set januar = New clsTrieda

    With januar
        .NazovListu = list1
    End With

Chci docílit: Potrebujem pri jednotlivých inštanciách prechádzať na iné listy.

Odpovědět
18.10.2020 15:20
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Alesh
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Alesh:18.10.2020 15:55

WorkSheet je třída, její instance se v Excelu vytváří automaticky.
Nevím, jestli chápu, co chceš vytvořit, ale tohle by tě mohlo inspirovat v tvém úsilí ;-):

Sub prejmenujPrvyListNaJanuar()
    Dim januar As Worksheet
    Set januar = ThisWorkbook.Worksheets(1)
    januar.Name = "január"
End Sub
 
Nahoru Odpovědět
18.10.2020 15:55
Avatar
Odpovídá na Alesh
Libor Šimo (libcosenior):18.10.2020 15:58

Otestujem to. Díky.

Nahoru Odpovědět
18.10.2020 15:58
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Alesh
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Alesh:18.10.2020 16:06

Ještě něco pro inspiraci:

Sub vytvorDvanactListovPreMesiace()
    ' vytvor 12 listov
    With ThisWorkbook.Worksheets
        If .Count < 12 Then
            .Add Count:=12 - .Count
        End If
    End With

    ' cyklus pres vsetky listy v tomto zosite
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        ws.Name = Format(DateSerial(2000, ws.Index, 1), "mmmm")
    Next ws
End Sub
 
Nahoru Odpovědět
18.10.2020 16:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.