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

Automatisch regel invoegen excel

Status
Niet open voor verdere reacties.

jeroen137

Gebruiker
Lid geworden
24 feb 2009
Berichten
19
Hallo,

Ik ben bezig met het maken van de opmaak van een factuur in Excel. Echter varieert het aantal producten behoorlijk per factuur, en om te voorkomen dat er een grote lege ruimte is, wou ik automatisch steeds een nieuwe regel voor een product aanmaken. Ik heb gezocht, maar kan er niet uit komen.

In de bijlage het bestand waar ik mee bezig ben. Wie heeft er een passende oplossing?

Alvast bedankt!

m.v.g.
Jeroen
 

Bijlagen

Waarom zo moeilijk doen?
Pas de layout zo aan dat je een A4-formaat krijgt van je factuur.

Dan vul je gewoon de tussengegevens in en onderaan staan de totalen.
Als de facturen die ik krijg zijn van het A4-formaat, ik zie daar niets verkeerd aan behalve het te betalen bedrag dan. :)
 

Bedankt, deze had ik nog niet gevonden. Ik ga mijn best doen.




Waarom zo moeilijk doen?
Pas de layout zo aan dat je een A4-formaat krijgt van je factuur.

Dan vul je gewoon de tussengegevens in en onderaan staan de totalen.
Als de facturen die ik krijg zijn van het A4-formaat, ik zie daar niets verkeerd aan behalve het te betalen bedrag dan. :)

Omdat sommige facturen zo groot worden, dat er meerdere pagina's nodig zijn. Daarnaast worden andere facturen weer zo "klein" dat er maar 2 regels nodig zijn. Vooral dat eerste is het probleem.
 
Ik heb het ondertussen geprobeerd. Ik snap niet hoe ik een macro goed kan invoegen. Heb gezocht naar uitleg, maar krijg het niet werkend. Iemand die mij hiermee kan helpen?
 
Jeroen,

De code moet achter het betreffende blad.
Klik met rechts onderaan op de tab van het blad en kies voor code weergeven.
Plak daar de code, als je het goed gedaan heb, zal het werken.

Suc6
 
Bedankt voor de reactie,

Ik ben weer een stapje verder. Ik heb nu de code ingevoerd, en aangepast voor mijn document. Echter zit ik nog met het probleem, dat hij de randen en formule niet overneemt. Excel creert nu wel een nieuwe regel, maar alleen de buitenranden neemt hij over. De randen binnenin en de formule doet hij niks mee. Is dit ook nog mogelijk?
Deze code gebruik ik nu.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$19" Then
With Application
.EnableEvents = False
Target.EntireRow.Insert Shift:=xlUp, CopyOrigin:=xlFormatFromRightOrBelow
Rows("3:3").Copy
Rows("2:2").PasteSpecial Paste:=xlPasteFormats
.CutCopyMode = False
.EnableEvents = True
.Goto Target.Offset(, 1)
End With
End If
End Sub


Sorry maar ben een beginner in excel

m.v.g.
Jeroen Brink
 
Jeroen,

Probeer het eens zo.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$19" Then
      With Application
        .EnableEvents = False
        Target.EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow
        Rows("20:20").Copy
        Rows("19:19").PasteSpecial Paste:=xlPasteFormats
        Rows("19:19").ClearContents
        .Cells(19, 8).FormulaR1C1 = "=R19C1*R19C7"
        .CutCopyMode = False
        .EnableEvents = True
        .Goto Target.Offset(, 1)
      End With
  End If
End Sub
 
Laatst bewerkt:
Zelf zou ik de rij pas invoegen na het invullen van B19. Ook moet je er rekening mee houden dat het bereik van de som die je waarschijnlijk achter 'Gesamtbetrag:' hebt staan niet correct kan zijn na het invoegen van een rij.

Met een iets andere code en een formule achter 'Gesamtbetrag:' in het voorbeeldje.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$19" Then
    Application.EnableEvents = False
    With Target.EntireRow
        .Copy
        .Insert Shift:=xlDown
        .Offset(-1).Resize(, 7).ClearContents
    End With
    [A19].Select
    Application.EnableEvents = True
End If
End Sub
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan