Cellen invullen tot het einde van het blad (Word)

Status
Niet open voor verdere reacties.

Killerclown

Gebruiker
Lid geworden
30 dec 2007
Berichten
181
Ik heb in Word een formulierke gemaakt.
De pagina bestaat uit uit 4 kolommen met 16 rijen.
Op het formulier kan je dan een lotnummer invullen en dan een selectie maken en wanneer er dan op Submit wordt gedrukt, worden de kolommen ingevuld. En zo telkens opnieuw tot het blad volgeraakt (of meerdere bladen).
Nu zit ik met het volgende probleem. Wanneer een blad niet volledig vol is, zou ik in de overige cellen een standaard tekstje willen plaatsen (iets wat ik zelf al in VB defineer).
Hoe kan ik er nu voor zorgen dat de overige cellen ingevuld raken tot het einde van het blad.
(Hopelijk leg ik het hier wat duidelijk uit). Het probleem is, dat ik niet weet hoeveel cellen er nog op te vullen zijn. Dit is telkens verschillend.
Ik heb in de bijlage het bestand gestoken dat ik al ineen geknutseld heb.

Wie kan mij helpen want mijn kennis is nogal beperkt?

Alvast heel veel dank.
 

Bijlagen

Killerclown,

Kun je niet beter als je code klaar is een page break invoegen, dan lijkt mij dat het probleem ook is opgelost, ziet er dan ook netter uit.
 
Killerclown,

Kun je niet beter als je code klaar is een page break invoegen, dan lijkt mij dat het probleem ook is opgelost, ziet er dan ook netter uit.

Dat is inderdaad een idee maar dan worden de rest van de cellen niet ingevuld en krijg ik een etikettenblad met een deel lege etiketten die ik dan niet meer kan gebruiken. Daarmee zou ik die lege cellen opvullen met een standaardtekst zodat ik die etiketten dan nog voor iets anders kan gebruiken. Kwestie van niet te veel te verspillen :-s
 
Killerclown,

Het kan eenvoudig opgelost worden met een teller.
Tenslotte weet je dat je 4 kolommen en 16 rijen hebt.

Met de volgende code kun je wel zien dat je een pagina verder bent.
Code:
ActiveWindow.Panes(1).Pages.Count

Wellicht dat je daar iets mee kunt.
Als je een pagina teller omhoog gaat dat je dan de laatste handeling ongedaan maakt.

Nog even een voorbeeld progje gemaakt, zie bijlage
 

Bijlagen

Laatst bewerkt:
Killerclown,

Het kan eenvoudig opgelost worden met een teller.
Tenslotte weet je dat je 4 kolommen en 16 rijen hebt.

Met de volgende code kun je wel zien dat je een pagina verder bent.
Code:
ActiveWindow.Panes(1).Pages.Count

Wellicht dat je daar iets mee kunt.
Als je een pagina teller omhoog gaat dat je dan de laatste handeling ongedaan maakt.

Nog even een voorbeeld progje gemaakt, zie bijlage

Superzeeuw, alvast dank voor mij te willen verder helpen en alvast dank om voor een voorbeeldje te zorgen maar ik krijg een foutmelding en ik vind het probleem niet.
Ik krijg compileerfout op het woord "Pages" in ActiveWindow.Panes(1).Pages.Count
Hier zit ik vast.
Ik had zelf al een beetje aan het zoeken geweest met het tellen maar blijkbaar lukt het niet om cellen te tellen. Rijen tellen lukt wel maar als een rij dan niet volledig is, dan loopt het weer mis.

Code:
 Dim aantalcellen As Integer
aantalcellen = ActiveDocument.UsedRange.Cells.count
If aantalcellen < 64 Then xxx
If aantalcellen = 64 Then Unload Me

Bij die xxx moest ik nog verder doen en dacht ik zoiets van een do...loop te doen totdat het aantalcellen = 64 en ik een volledige pagina vol had.
Maar het loopt mis op de lijn ActiveDocument.UsedRange.Cells.count. Blijkbaar lukt dat niet.
Is het mogelijk om cellen te tellen? Ik heb al gegoogeld maar ik vind nog geen oplossing.
(Tja, mijn kennis is nogal beperkt en ik moet nog heel veel leren.)

Groetjes.
 
Killerclown,

Probeer het eens met de volgende code:

Code:
ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)

Welke verwijzingen heb je in de macro editor.

Ikzelf werk met Word 2007.
 
Laatst bewerkt:
Je doet er beter aan een macrotje te maken warmee je kunt aangeven met welk etiket op een etikettenvel het afdrukken moet beginnen. Dat voorkomt het zinloos vullen van etiketten.
 
Killerclown,

Probeer het eens met de volgende code:

Code:
ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)

Welke verwijzingen heb je in de macro editor.

Ikzelf werk met Word 2007.

Yihaaaa...het werkt met bovenstaande code!!!!
Code:
ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)

Nu zit ik nog met 1 probleempje. De pagina wordt mooi opgevuld maar op de 2e pagina verschijnt er nog een lege rij met cellen en die zou weg moeten zodat ik maar 1 pagina heb (of 2 wanneer er 2 opgevuld worden)

Ikzelf werk hier nog met Word2000 maar eigenlijk is het programma-tje voor op mijn werk en ik denk dat het daar ook Word 2007 is maar dat ga ik nog es moeten checken.
Het meeste wat ik hier thuis maak, werkt ook op het werk dus ik veronderstel dat het nu ook wel zal werken met bovenstaande code in.

Alvast dank.
 
Killerclown,

In de Sub FinishSheet zet daar als laatste gedeelte de volgende code en dan gaat het om de rode tekst:

Code:
        Selection.MoveRight Unit:=wdCell
    Loop
    [COLOR="Red"]Selection.Rows.Delete[/COLOR]
    Unload Me
End Sub
 
Laatst bewerkt:
Killerclown,

In de Sub FinishSheet zet daar als laatste gedeelte de volgende code en dan gaat het om de rode tekst:

Code:
        Selection.MoveRight Unit:=wdCell
    Loop
    [COLOR="Red"]Selection.Rows.Delete[/COLOR]
    Unload Me
End Sub

Dat was de oplossing. Alvast heeeeeeeeeeel veeeeeeeeel dank Superzeeuw!!!
Dit was het wat ik zocht. Nu nog een paar kleine dingen toevoegen (zoals het afprinten) maar dat zal mij wel lukken. Ik heb zo al iets op het gedacht.
Ik heb weeral heel veel bijgeleerd.
Ik zou graag een cursus volgen over VB maar door mijn werk is dit in avondonderwijs praktisch onmogelijk daarmee dat ik wat op mijn eigen leer en vooral veel moet vragen en leren van dingen die mensen mij helpen.

Nogmaals dank!!!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan