• 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 automatisch invoegen pagina einde

Status
Niet open voor verdere reacties.

roami

Gebruiker
Lid geworden
19 mei 2008
Berichten
6
Hallo,

Ik heb een excelbestand met bongegevens. onderaan elke bon staat als laatste woord
betaalwijze. Ik wil graag na deze regel een pagina einde invoegen. Ik heb voor elke week zo'n bestand met gemiddeld 300 bonnen. Deze varieren in regelaantal.

Kan iemand mij aangeven hoe ik dit met bv een macro kan doen, alvast bedankt!
 
Roami, Kan je dit niet gewoon eenvoudig met een footer (voettekst) oplossen? Anders graag een voorbeeldbestandje....

EDIT: ....hmmmm.... Je hebt het over een paginaeinde na het woord 'betaalwijze'. Dus niet over het onderaan de pagina herhalen van het bewuste woord.
Die '300 bonnen'.... Heb je die onder elkaar in 1 bestand staan? Dus je werkt in 1 week gewoon 'door'?

Groet, Leo
 
Laatst bewerkt:
bestandje bijgevoegd

Hoi ik heb een selectie uitgeknipt uit mijn bestandje, alvast bedankt!
 

Bijlagen

  • voorbeeld.xls
    96,5 KB · Weergaven: 114
Roami, En ik heb ondertussen een klein stukkie code in elkaar geflanst...:D
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    
    If UCase(Target.Value) = "BETAALWIJZE" Then
        ActiveSheet.HPageBreaks.Add before:=Target.Offset(1)
    End If

End Sub
Plaats deze in de module van de worksheet waar je je bonnen maakt.

Groet, Leo
 
Laatst bewerkt:
Met deze macro zou het moeten lukken

Code:
Sub PaginaEindeInvoegen()
    
    Dim Teller
    Teller = 0
    
    ' Zet het scherm uit
    Application.ScreenUpdating = False
    
    ' Selecteer cel C3 als atartpunt
    Range("C3").Select
    
    ' Zoalng bonnummer 301 niet is bereikt, doe dan
    While Teller < [COLOR="Red"][B]301[/B][/COLOR]
        If ActiveCell.Offset(1, 0).Value <> "Betaalwijze" Then
            ActiveCell.Offset(1, 0).Range("A1").Select
        Else
            ActiveCell.Offset(2, 0).Range("A1").Select
            ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
            Teller = Teller + 1
        End If
        
    Wend
    
    ' Zet het scherm weer aan
    Application.ScreenUpdating = True
    
End Sub

Werkt t/m 300 bonnen, maar het aantal kun je zelf aanpassen, zie rode markering. Als je minder dan 300 bonnen hebt hoef je niets aan te passen, maar duurt het wat langer voor de macro klaar is.
 
:d

Gert, Het ligt er natuurlijk aan of de TS die pagebreak direct wil, of juist achteraf....

Groet, Leo
 
Laatst bewerkt:
Bedankt!

Leo en Geert, harstikke bedankt voor de moeite, het werkt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan