bij openen workbook, bepaald blad selecteren adhv waarde

Status
Niet open voor verdere reacties.

LeonieK12

Gebruiker
Lid geworden
9 jan 2013
Berichten
36
beste VBA experts,

ik ben op zoek naar een hint/suggestie hoe ik een bepaald tabblad kan openen. Hieronder staat de code die ik gebruik om een bepaald workbook te openen daarop gegevens weg te schrijven. Jaarlijks moeten deze gegevens opnieuw ingevuld worden en opgeslagen op een nieuw tabblad. Nu ben ik op zoek naar het stukje code wat uit de textbox Jaar de waarde vergelijkt met de titels van de tabbladen (jaartallen), dan het juiste tabblad selecteert zodat daarop de gegevens kunnen worden weggeschreven. Een nieuw tabblad aanmaken en daarop meteen de gegevens wegschrijven kan niet, want er moeten meerdere gegevens op een tabblad worden opgeslagen. Het openen van de het juiste bestand lukt al, nu nog de selectie van het juiste tabblad. Ik heb een poging gedaan 'zoeken naar juiste blad met juiste jaartal
Sheets("Me.Value.txtJaar").activate
, maar die geeft als foutmelding script valt buiten bereik. Wie kan me op weg helpen?

Alvast bedankt.

Leonie

Code:
Private Sub cmbGegevensAfdelingsDB_Click()

'openen werkboek afdelingsoverzicht kenniskaart CNS (= bestaande bestand, WERKT > AFDELINGSOVERZICHT OPENT NU ZICHTBAAR, ACTIVEWINDOW.VISIBLE = TRUE OMZETTEN NAAR FALSE OM NIET ZICHTBAAR TE KRIJGEN)
    Workbooks.Open ("G:\....\afdelingsoverzicht kenniskaart CNS.xlsm")

'afdelingsoverzicht kenniskaart CNS wordt niet zichtbaar geopend
    ActiveWindow.Visible = True

[B]'zoeken naar juiste blad met juiste jaartal > hier gaat het volgens mij niet goed, code zal wel niet goed zijn. 
    Sheets("Me.Value.txtJaar").activate[/B]
        
'zoeken naar 1e lege cel in afdelingsoverzicht discipline CNS (WERKT)
    Cells.Find(what:="", After:=Range("A2"), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False).activate
    
 'invullen waarden uit formulier in afdelingsoverzicht discipline CNS
     With ActiveCell
            ActiveCell.Offset(0, 0) = Me.cmbFunctie.Value
            ActiveCell.Offset(0, 1) = Me.txtNaam
           etc ...
        End With
        
'opslaan afdelingsoverzicht discipline CNS
ThisWorkbook.Save
ThisWorkbook.Close
              
End Sub
 
Leonie,
Je zit aardig in de buurt...
Echter als je tekst tussen quotes ("-tekens) doet wordt dit gezien als tekst. Dus mits jouw sheet Me.Value.txtJaar heet gaat deze niet werken > Sheets("Me.Value.txtJaar")

Probeer eens
Code:
'zoeken naar juiste blad met juiste jaartal > hier gaat het volgens mij niet goed, code zal wel niet goed zijn. 
    Application.Goto Sheets(txtjaar.Value).Cells(1)

Probeer .Activate te vermijden...
 
Beste Spaarie,

Hartelijk dank voor je reactie en advies. Volgens mij werkt het, maar ik ben ook nog weer behoorlijk aan het wijzigen geweest. Vanmiddag en morgen ga ik testen en laat ik het definitief weten en zal mijn vraag evt op opgelost zetten.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan