Hallo,
Van VBA heb ik erg weinig verstand, maar op het werk zit ik in Excel met een (volgens mij simpel) probleempje.
In een macro wordt onder andere een nieuw werkblad ingevoegd. Dit werkblad moet als titel de waarde krijgen die op een ander werkblad in cel C1 staat (bijvoorbeeld '36' of '41'). Bij het opnemen van een macro krijg ik dit niet voor elkaar, want dan komt in de VBA-code te staan dat de naam van het nieuwe werkblad '36' moet worden omdat ik dat ten tijde van het opnemen van de macro kopieerde. Iedere keer als de macro wordt uitgevoerd moet echter de waarde die op dat moment in cel C1 staat als werkbladnaam worden genomen. Volgens mij heel simpel, maar ik krijg het met de helpfunctie niet gevonden.
De code is nu - versimpeld - als volgt:
En als ik dan nóg een beroep op jullie mag doen... is het ook mogelijk ervoor te zorgen dat er automatisch een melding verschijnt als er al een werkblad met die naam is? Ik zat zelf al te puzzelen met Msgbox ofzoiets... (Bijvoorbeeld: de werkbladnaam moet '38' worden, maar er bestaat al een blad met de naam '38'. De gebruiker wordt hierop gewezen en de macro wordt 'afgebroken'.)
Alvast heel erg bedankt!
Van VBA heb ik erg weinig verstand, maar op het werk zit ik in Excel met een (volgens mij simpel) probleempje.
In een macro wordt onder andere een nieuw werkblad ingevoegd. Dit werkblad moet als titel de waarde krijgen die op een ander werkblad in cel C1 staat (bijvoorbeeld '36' of '41'). Bij het opnemen van een macro krijg ik dit niet voor elkaar, want dan komt in de VBA-code te staan dat de naam van het nieuwe werkblad '36' moet worden omdat ik dat ten tijde van het opnemen van de macro kopieerde. Iedere keer als de macro wordt uitgevoerd moet echter de waarde die op dat moment in cel C1 staat als werkbladnaam worden genomen. Volgens mij heel simpel, maar ik krijg het met de helpfunctie niet gevonden.
De code is nu - versimpeld - als volgt:
Code:
Sub ArchiveerRooster()
'
' ArchiveerRooster Macro
' Met behulp van deze macro wordt het rooster gearchiveerd (alleen waarden blijven behouden).
'
'
Sheets("blanco plan").Select
Sheets("blanco plan").Copy Before:=Sheets(3)
Sheets("bewerk plan").Select
Range("C1").Select
ActiveCell.FormulaR1C1 = "36"
Sheets("blanco plan (2)").Select
Sheets("blanco plan (2)").Name = "36"
Sheets("bewerk plan").Select
Cells.Select
Selection.Copy
Sheets("36").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
End Sub
En als ik dan nóg een beroep op jullie mag doen... is het ook mogelijk ervoor te zorgen dat er automatisch een melding verschijnt als er al een werkblad met die naam is? Ik zat zelf al te puzzelen met Msgbox ofzoiets... (Bijvoorbeeld: de werkbladnaam moet '38' worden, maar er bestaat al een blad met de naam '38'. De gebruiker wordt hierop gewezen en de macro wordt 'afgebroken'.)
Alvast heel erg bedankt!