• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Aanpassen VBA

Status
Niet open voor verdere reacties.

verluc

Gebruiker
Lid geworden
29 mei 2009
Berichten
535
Bezit volgende macro, die grotendeels uit dit forum komt:

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
If Target.Address = "$A$1" Then
Sheets(Target).Activate
If Err.Number = 0 Then Exit Sub
With ThisWorkbook
.Sheets("2009").Copy , .Sheets(.Sheets.Count)
.Sheets(.Sheets.Count).Name = Target
End With
End If
Application.Run "Count"
End Sub

Echter in cell A1 staat datum : 01.01.2009

Wat ik graag zou willen is dat bij "double-click" op A1 er een nieuwe sheet wordt gecreerd met als benaming 2010 ( dus telkens een jaar automatisch bijvoegen)
Nu komt in de nieuwe sheet de datum van A1
Mogelijk?
 
Bvb.

Code:
.Sheets(.Sheets.Count).Name = Year(Target) + 1
 
Sorry Wigi,

Bij het testen van deze macro kom ik inderdaad van sheet 2009 op 2010, maar van 2010 gaat deze niet naar 2011, 2012 enz. maar komt terug met 2009(2) enz.
Hoe is dit te verhelpen.?

Kan in mijn code : .Sheets("2009").Copy , .Sheets(.Sheets.Count

niet door iets anders vervangen worden ?
Met dank.
 
Dan zal je eerst moeten testen of 2009 al bestaat als tabbladnaam.
 
Ja , tabblad 2009 bestaat reeds, maar 2010 zal dan volgend jaar ook al bestaan.
Kan Uw lijn : .Sheets(.Sheets.Count).Name = Year(Target) + 1
niet worden vergeleken met telkens het huidig jaar ?
 
Ja , tabblad 2009 bestaat reeds, maar 2010 zal dan volgend jaar ook al bestaan.
Kan Uw lijn : .Sheets(.Sheets.Count).Name = Year(Target) + 1
niet worden vergeleken met telkens het huidig jaar ?

Verander dan de regel in: .Sheets(.Sheets.Count).Name = Year(Now()) + 1
Eventueel kan je er voor kiezen om de code in ThisWorkbook bij SheetsBeforeDoubleClick te plaatsen zodat het voor elk werkblad geldt.

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan