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

Gegevens invoeren en afdrukken

Status
Niet open voor verdere reacties.

Balgehakt

Gebruiker
Lid geworden
5 feb 2008
Berichten
15
Beste,

Ik ben opzoek naar een oplossing voor wat ik zou willen.

Ik heb data die ik kan kopiëren naar excel.

Uit deze data (die onder en naast elkaar in cellen staan) wil ik gegevens halen en deze in een formulier plaatsen en afdrukken.
Elk afgedrukte formulier is dus 'uniek' bijvoorbeeld:

data (voorbeeld):

2-3-2020, 382, Pietje, rechts, 15, nee
2-3-2020, 256, Sjaak, links, 4, ja

enzovoorts.

Dan heb ik een template voor het formulier en daar wil ik in een aantal cellen deze data printen dus de datum, naam en Ja of Nee (rest is overbodig).

Elke keer (dag) is deze data anders en varieert in aantallen, elke regel zou 1 formulier (pagina) moeten zijn dan. Dus elke dag kopieer ik dit naar een (bijv) sheet in excel zodat het formulier op een andere sheet afgedrukt kan worden met deze data.

Is dit moeilijk om te realiseren?
 
Heb je een voorbeeldbestand met daarin een gewenste uitkomst?
 
Laat je gegevens in Excel in een tabel staan en maak een mail-merge met Word waarbij je de Excel tabel als bron gebruikt.
 
Ik heb een voorbeeld bestand toegevoegd.

De rode tekst is variabale tekst welke gehaald moet worden uit of een apart excel bestand of uit Sheet 2 (wat makkelijker is).

De bedoeling is om elke dag opnieuw sheet 2 te vullen met deze gegevens en deze aan het eind van de dag af te drukken. Elke regel in sheet 2 is een apart formulier wat afgedrukt moet worden.

alles waar x of xx of xxx staat is tekst die ik zelf naderhand moet aanpassen, hier staan dingen die ik niet hier kan plaatsen


Is dit makkelijk te realiseren?

@jkpieterse, wat u aangeeft heb ik naar gekeken maar kom ik ook niet uit en weet ook niet of dat is wat ik zoek.
 

Bijlagen

  • Voorbeeld.xlsx
    14,9 KB · Weergaven: 32
Laatst bewerkt:
Plaats in cel A1 eens een getal dat het rijnummer aangeeft waarvandaan je je gegevens wilt ophalen en gebruik op de rest van het blad de functie INDEX om de juiste gegevens uit de juiste kolom te halen voor de rij die in A1 staat. Hierna kan je door in A1 een ander getal te zetten een andere rij ophalen in je "raport". Daarna wordt het makkelijk en kan je bijvoorbeeld een macrootje schrijven dat middels een tellertje alle rijen in die cel zet en afdrukt o.i.d.

Zie bijlage waarin ik op rij 2 wat formules heb gezet.

Maar Word blijft een betere optie qua opmaak van je afdruk en dergelijke.
 

Bijlagen

  • Voorbeeld (5).xlsx
    15,7 KB · Weergaven: 35
Als ik dit verander voert hij idd de gegevens in, begint al ergens op de lijken :D

Is zo'n macro moeilijk?
 
Als je je brongegevens eerst omzet in een tabel (opmaken als tabel), dan zorgt Excel er automatisch voor dat de INDEX formulas allemaal bijgewerkt worden als je meer regels in je tabel krijgt. Daarna is de macro zo iets als:
Code:
Sub PrintAll()
    Dim Ct As Long
    For Ct = 1 To Worksheets("Sheet2").ListObjects(1).ListRows.Count
        Worksheets("Sheet1").Range("A1").Value = Ct
        Worksheets("Sheet1").PrintOut
    Next
End Sub
 
Ik heb het nu om kunnen zetten met alle juiste inhoud, als ik in A1 een ander nummer zet zie je de data veranderen.

Ik krijg alleen die macro niet werkend dat alles geprint word.

Het zou als dat kan wel handig zijn als het een kwestie is van kopieren en plakken van de data en op de knop drukken van RUN macro dat de print opdracht verstuurd wordt.
 
kun je het aangepaste bestand posten?
 
Heb je wel de gegevenstabel opgemaakt als tabel? En staan alle rijen "in" de tabel?
 
Is dat de sheet waar de variabele data in staat of het formulier zelf? Mijn excel is in het engels dus dan is het wat lastiger die dingen vinden :rolleyes:
 
de sheet waar de gegevens in staan. Op de Home tab, Format As Table gallery gebruiken, of op de Insert tab de knop "Table" gebruiken. Eindresultaat is hetzelfde alleen kan je op de Home tab meteen de tabelopmaak kiezen, die op de insert tab geeft je de standaard opmaak.
 
Ja nu krijg ik een foutmelding:
Fout 28 tijdens uitvoering:
Onvoldoende stackruimte

als ik op opsporing druk:

Sub PrintLijst()
'
' PrintLijst Macro
' Sub PrintAll() Dim Ct As Long For Ct = 1 To Worksheets("Sheet2").ListObjects(1).ListRows.Count Worksheets("Sheet1").Range("A1").Value = Ct Worksheets("Sheet1").PrintOut Next End Sub
'

'
Application.Run "CITprinttest.xlsx!PrintLijst"
Range("J22").Select
Sheets("Sheet1").Select
End Sub
 
Laatst bewerkt:
Die code krijg ik te zien als ik op fout opsporing druk, In de Macro die ik maak heb ik jouw code geplaatst
 
Vervang jouw hele macro door:
Code:
Sub PrintLijst()
    Dim Ct As Long
    For Ct = 1 To Worksheets("Sheet2").ListObjects(1).ListRows.Count
        Worksheets("Sheet1").Range("A1").Value = Ct
        Worksheets("Sheet1").PrintOut
    Next
End Sub
 
Hij werkt!!

Hij pakt nu wel ook blanco regels mee uit de data volgens mij want hij ging door met printen van pagina's waarbij de data 0 werd.

Moet ik nu elke keer opnieuw die tabel opmaak doen of kan ik nu gewoon kopieren en plakken en op de knop drukken?
 
Als je je tabel precies even groot maakt als er gegevens zijn, dan gaat het wel goed. De tabel zal vanzelf groeien als je er meer gegevens onder plakt, zolang je direct onder de tabel plakt. als je geheel nieuwe gegevens hebt gewoon eerst alle tabelrijen verwijderen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan