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

  • Onderwerp starter Onderwerp starter bs317
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

bs317

Gebruiker
Lid geworden
10 jun 2003
Berichten
42
Hallo,
Ik heb een lijst met straatnamen in kolom A. Nu wil ik voor elke straatnaam een pagina laten afdrukken. Het is de bedoeling d.m.v. een macro om telkens wanneer er in de lijst een andere straatnaam komt er een na de vorige straatnaam een paginaeinde komt zodat ik voor elke straatnaam een pagina heb. Graag uw hulp.
Groeten,
Bernard.
 
Hallo,

Met een macro is dat heel goed mogelijk, heb dit zelf ook toegepast.
Met onderstaande regel is dit mogelijk, zorg er wel voor dat je een active cell hebt anders werkt het niet.

Zoek in jouw lijst naar een straatnaam, en maak de cell eronder actief en voer onderstaande regel uit.

ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell

Groeten
 
Laatst bewerkt:
Hallo,
Dit werkt ook wel maar ik zoek het eigenlijk iets meer ingewikkelder. De lijst met straatnamen is soms wel 5000 lijnen lang en als ik elke straatnaam manueel moet gaan zoeken is het wel erg tijdrovend. Dus zou ik graag een macro willen die dit voor mij automatisch doet. Dus in de lijst gaan zoeken naar het einde van de straatnaam en dan daar een paginaeinde inlassen en zo verder gaan naar de volgende straatnaam en dit tot het einde.
Toch al bedankt voor je vlugge reactie.
Groetjes,

Bernard.
 
Hallo Bernard,

Nee, niet met de hand zoeken maar met een macro.

Voorbeeld:

Sub Straatnamen()
Rij = 1
Do until Cells(Rij, 1) = ""
Cells(Rij + 1, 1).Activate
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
Loop
End Sub

Ervan uitrgaande dat de straatnamen onder elkaar staan zonder lege regels ertussen.

Groeten
 
Laatst bewerkt:
Bernard,

Er zit nog een foutje in de macro de volgende regel moet nog toegevoegd worden

Rij = Rij + 1

Deze regel komt voor Loop in de macro

heb de macro niet gekopieeerd maar overgetypt en dan gaat er weleens iets fout.

Groeten
 
Hallo,
De macro werkt goed. Hij zet elke rij in een pagina maar wanneer ik nu bv. zes rijen achtereen heb met dezelfde straatnaam dan zou de macro deze zes rijen van dezelfde straatnaam ook in een en dezelfde pagina moeten zetten en niet appart.
Bedankt en de groetjes.
Bernard.
 
Hallo Bernard,

Even de regel If Cells ....... toeveogen en het erkt zoals jij het wilt.

Sub Straatnamen()
Rij = 1
Do Until Cells(Rij, 1) = ""
If Cells(Rij, 1).Value = Cells(Rij + 1, 1).Value Then GoTo Volgende
Cells(Rij + 1, 1).Activate
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
Volgende:
Rij = Rij + 1
Loop
End Sub


Groeten
 
Hallo Bernard,

Met onderstaande macro reset je eerst alle pagebreaks alvorens de nieuwe te genereren.

Sub Straatnamen()
Application.ScreenUpdating = False
ActiveSheet.ResetAllPageBreaks
Rij = 1
Do Until Cells(Rij, 1) = ""
If Cells(Rij, 1).Value = Cells(Rij + 1, 1).Value Then GoTo Volgende
Cells(Rij + 1, 1).Activate
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
Volgende:
Rij = Rij + 1
Loop
Application.ScreenUpdating = True
End Sub

Groeten
 
Laatst bewerkt:
Hallo,

Ik heb de macro getest en het werkt prima. Elke straatnaam krijgt nu een apparte pagina toegekend. Dit is precies wat ik wou.
Van harte bedankt voor de macro.
Groetjes,

Bernard.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan