• 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.

Macro met variabele

Status
Niet open voor verdere reacties.

sandernoteborn

Gebruiker
Lid geworden
8 mei 2006
Berichten
68
Ik heb een excel bestand waarin meerdere zelfde sheets zitten. De sheets zijn kopien van elkaar en betreffen verschillende jaren..

In de sheet(s) zitten macro's. Hoe kan ik de Macro's zo laten werken dat ze voor de desbetreffende sheet werken. In mijn macro's in de 2007 sheet staan alle waarden voor de 2006 sheet. Handmatig veranderen werkt niet want dan werken mijn 2006 macro's weer niet meer. Hoe los ik dit op?
 
Kun je een klein fictief voorbeeldje plaatsen met een stukje code waar het fout gaat en de naam aangepast moet worden? De sheetnaam kun je opnemen in de macro.
 
Stel ik heb c:\mydocuments\excelvoorbeeld\prijzen2006

De ene sheet heet prijzen2006 de andere prijzen 2007

Nu wil ik de macro dus voor beide sheets gebruiken. Hoe kan ik dat het beste in de macro zetten dat hij als ik werk in prijzen2006 dat hij de macro's toepast op 2006. En als mijn activesheet 2007 is dat hij de macro's in 2007 toepast?

Stel dit is mijn code:

ActiveSheet.Unprotect
Application.Goto Reference:=Worksheets("Prijzen2006").Range("A34"), scroll:=True
ActiveSheet.Protect
 
Laatst bewerkt:
sandernoteborn zei:
Stel ik heb c:\mydocuments\excelvoorbeeld\prijzen2006

De ene sheet heet prijzen2006 de andere prijzen 2007

Nu wil ik de macro dus voor beide sheets gebruiken. Hoe kan ik dat het beste in de macro zetten dat hij als ik werk in prijzen2006 dat hij de macro's toepast op 2006. En als mijn activesheet 2007 is dat hij de macro's in 2007 toepast?

Stel dit is mijn code:

ActiveSheet.Unprotect
Application.Goto Reference:=Worksheets("Prijzen2006").Range("A34"), scroll:=True
ActiveSheet.Protect


Opgelost..... Erg stom van mezelf maar het enige wat ik hoefde te vervangen was Worksheets("Prijzen2006").Range in ActiveSheet.Range

Nu werkt het perfect voor alle sheets apart!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan