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

Status
Niet open voor verdere reacties.

Lijst

Gebruiker
Lid geworden
1 feb 2016
Berichten
29
Ik heb deze vraag al eens in het forum gesteld maar ik vrees dat ik niet echt duidelijk ben geweest.

In volgend bijlage had ik graag 4 lege rijen boven de tabel toegevoegd.
En een macro knop om telkens wanneer ik een nieuwe factuur wil toevoegen bovenaan in de tabel een lege rij aanmaakt.

Ik ben er al een tijdje mee bezig geweest maar bij mij loopt de macro voor het sorteren (geactiveerd door een wijziging in tabel H) altijd stuk.

Iemand een idee hoe ik dit aanpak?
 

Bijlagen

  • Facturen sorteren (1)-6.xlsm
    41,8 KB · Weergaven: 30
Maak je rij-hoogte 2 x zo groot dan heb je geen probleem met sorteren.
 
Maak je rij-hoogte 2 x zo groot dan heb je geen probleem met sorteren.

Sorry daar ben ik even niet in mee?
het probleem is vooral wanneer ik lege rijen boven de kolom invoeg dat dan plots de macro niet meer werkt, waarschijnlijk omdat deze dan naar de verkeerde rijen verwijst.
Ik heb al geprobeerd de code aan te passen, maar ben niet echt en VBA expert
gr
 
Klopt de code wel met het geplaatst document?
Code:
Rows("7:7").Select
moet dat niet
Code:
 Rows("2:2")
zijn. Los van de onnodige seclect.

Code:
Range("a2:h" & lr).Sort [h2], 2, [c2], , , X1Yes
Moet dit niet
Code:
Range("a1:h" & lr).Sort [h2], 2, [c2], , , X1Yes

De laatste rij kan je beter vanaf beneden bepalen. Hoe gaat je documentnummering eruit zien als je een lege rij invoegt?
 
Hej VenA

Alvast bedankt,

de factuur nummering ga ik verwijderen.
 
Verwijder de factuurnummers en maak er een tabel (listobject) van.
De grootte van de tabel aanpassen aan de overgebleven rijen.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
With ListObjects(1)
  If Not Intersect(Target, .ListColumns("betaald").Range) Is Nothing Then
    Application.EnableEvents = False
      .Range.Sort .Range(1), , , , , , , 1
      .DataBodyRange.Rows(1).Insert
      .DataBodyRange.Cells(1) = .ListRows.Count
    Application.EnableEvents = True
  End If
End With
End Sub
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan