1 macro voor identieke bladen in een bestand?

Status
Niet open voor verdere reacties.

romian

Gebruiker
Lid geworden
5 sep 2007
Berichten
97
Beste lezers,
Hoe krijg ik dat voor elkaar?
Ik heb een bestand met 35 identieke (kopie's van blad 1) bladen.
Op blad 1 heb ik een sorteermacro gemaakt die het primma doet.
Daarin wordt na worksheets ("Blad 1"). gegeven met als gevolg
dat ik die macro niet kan gebruiken voor de 35 andere bladen.
Hoe moet ik dat oplossen, bedankt vast voor het lezen. ROMIAN
 
Helaas Wigi, dat was ook mijn eerste gedachten maar dan krijg ik
fout 9 : Het subscript valt buiten het bereik.
Weet U nog een andere mogelijkheid? en bedankt voor de reactie Romian
 
Plaats die macro hier eens en anders ook een voorbeeldbestandje.
 
Als je iets met de andere bladen wilt zal je
de naam van de werkbladen in stringvariabelen moeten omzetten.
Daar kan je dan mee werken in de code.

Een voorbeeldje uploaden en uitleg wat je nu precies wilt, maakt antwoorden
een stuk eenvoudiger.
Hoe uitgebreider de vraag, hoe beter het antwoord...
 
Als het gelukt is staat in de bijlage het bestand met macro.Romian
 
Hierbij de macro; het bestand is waarschijnlijk te groot om te verzenden.Mijn probleem zit in : Worksheet ("blad1").
Zodoende kan ik de macro niet toepassen op b.v Blad2.
Ik hoop dat iemand een oplossing heeft Romian
Sub Macro1()
'
' Macro1 Macro
'
' Sneltoets: CTRL+SHIFT+V
'
ActiveSheet.Unprotect
Range("A6").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
Selection.Insert Shift:=xlDown
ActiveCell.Offset(3, 0).Rows("1:1").EntireRow.Select
Selection.Copy
ActiveCell.Offset(-3, 0).Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(0, 1).Range("A1").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("A6").Select
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.AutoFilter
ActiveWorkbook.Worksheets("Blad1").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Blad1").AutoFilter.Sort.SortFields.Add Key:= _
ActiveCell.Offset(-1, 1).Range("A1:A23"), SortOn:=xlSortOnValues, Order:= _
xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Blad1").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ActiveSheet.Range("$A$6:$DX$60").AutoFilter Field:=2
ActiveWorkbook.Worksheets("Blad1").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Blad1").AutoFilter.Sort.SortFields.Add Key:= _
ActiveCell.Offset(0, 1).Range("A1:A23"), SortOn:=xlSortOnValues, Order:= _
xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Blad1").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A6").Select
Selection.AutoFilter
Range("A6").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 8).Range("A1:I1").Select
ActiveCell.FormulaR1C1 = _
"=IF(R[-1]C[-7]=0,""U KUNT NIEUW DECLARATIENUMMER INVULLEN "",""U KUNT NIEUWE REGEL AANMAKEN Shift+Contr+V "")"
Range("A6").Select

Range("A6").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveWorkbook.Save
End Sub
 
Hallo Romian

Ik heb er even snel naar gekeken naar de door jouw opgenomen macro.
Dat kan vast simpeler.
Het kost meer tijd om een opgenomen macro te strippen dan iets nieuws
voor te stellen.
Als ik nu weet wat je precies wilt sorteren, kan ik kijken naar een algemene
sorteermacro.
Daarom stel ik voor dat je toch het excel-bestand stript naar twee werkbladen.
Een paar rijen is voldoende om te bekijken welke soort data.

vrgr
Atmaram
 
Hallo Wigi en P van rooijen
Vriendelijk bedankt voor jullie aandacht en tijd maar het probleem is inmiddels opgelost.
Mogelijk heb ik wigi niet volledig begrepen maar..
Als ik na ActiveWorkboek. WorkSheets("Blad1") helemaal weghaal
en direct na ActiveWorkboek.ActiveSheet. plaats dan is de macro
toepasbaar op alle bladen.
Ik had in eerste instantie ActiveSheet tussen de " " geplaatst vandaar.Bedankt en tot ziens Romian
 
Dat bedoelde ik inderdaad maar wellicht niet duidelijk genoeg. Goed dat het opgelost is nu.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan