• 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 in een tabel schrijven

Status
Niet open voor verdere reacties.

Jack Nouws

Terugkerende gebruiker
Lid geworden
16 apr 2008
Berichten
1.396
Hallo

Met onderstaande code worden mijn gegevens naar werkblad Data geschreven en dat gaat goed. Maar nu heb ik van al die weggeschreven gevens een tabel gemaakt. En als ik nu weer gegevens wegschrijf dan worden de gegevens onder de tabel geplaatst in plaats van in de tabel. Is er een mogelijkheid om de code aan te passen zodat de gegevens in de tabel geplaatst kunnen worden?

Met vr gr
Jack
Code:
Private Sub CmdOK_Click()
    Dim MyRange         As Object
    Dim legeregel       As Long

    Set MyRange = Worksheets("Data")

    'schermwisseling uitschakelen (flikkeren beeldscherm)
    Application.ScreenUpdating = False
    Worksheets("Data").Unprotect

    legeregel = MyRange.Range("B" & Rows.Count).End(xlUp).Row + 1

    MyRange.Range("B" & legeregel) = Format(TxtDatum.Value, "mm/dd/yyyy")
    MyRange.Range("C" & legeregel) = FrmOverschrijving.CboVanBron.Value
    MyRange.Range("D" & legeregel) = FrmOverschrijving.TxtVanBron.Value
    MyRange.Range("E" & legeregel) = FrmOverschrijving.TxtVanPost.Value
    MyRange.Range("F" & legeregel) = FrmOverschrijving.CboNaarBron.Value
    MyRange.Range("G" & legeregel) = FrmOverschrijving.TxtNaarBron.Value
    MyRange.Range("H" & legeregel) = FrmOverschrijving.TxtNaarPost.Value
    MyRange.Range("I" & legeregel) = FrmOverschrijving.TxtOmschrijving.Value
    MyRange.Range("J" & legeregel) = FrmOverschrijving.TxtInkomsten.Value
    MyRange.Range("K" & legeregel) = FrmOverschrijving.TxtUitgaven.Value
    Worksheets("Data").Protect


    'Schermwisseling terug inschakelen
    Application.ScreenUpdating = True
End Sub
 
Het woord "legeregel" zegt het al.:cool:
Als je de + 1 achter die regel weghaalt, dan wordt de gegevens in die regel overschreven.

Heb je anders een voorbeeld bestand?

Met vriendelijke groet,


Roncancio
 
Het woord "legeregel" zegt het al.:cool:
Als je de + 1 achter die regel weghaalt, dan wordt de gegevens in die regel overschreven.

Heb je anders een voorbeeld bestand?

Met vriendelijke groet,


Roncancio

Bij Deze

Met vr gr
Jack
 

Bijlagen

Ook kan hetzelfde wat sneller:

Code:
Private Sub CmdOK_Click()
  With Sheets("Data")
    .Unprotect
    .[B1:K1] = split(Format(TxtDatum.Text, "mm/dd/yyyy") & "|" & CboVanBron.Value & "|" & TxtVanBron.Text & "|" & TxtVanPost.Text & "|" & CboNaarBron.Value & "|" & TxtNaarBron.Text & "|" & TxtNaarPost.Text & "|" & TxtOmschrijving.Text & "|" & TxtInkomsten.Text & "|" & TxtUitgaven.Text,"|")
    .Protect
  End With
End Sub
 
Ook kan hetzelfde wat sneller:

Code:
Private Sub CmdOK_Click()
  With Sheets("Data")
    .Unprotect
    .[B1:K1] = split(Format(TxtDatum.Text, "mm/dd/yyyy") & "|" & CboVanBron.Value & "|" & TxtVanBron.Text & "|" & TxtVanPost.Text & "|" & CboNaarBron.Value & "|" & TxtNaarBron.Text & "|" & TxtNaarPost.Text & "|" & TxtOmschrijving.Text & "|" & TxtInkomsten.Text & "|" & TxtUitgaven.Text,"|")
    .Protect
  End With
End Sub

Kan je met deze code de gegevens wel in de tabel zetten ipv er onder?

Met vr gr
Jack
 
Hoe kan ik in een ListObject een lege regel vinden?

Met vr gr
Jack
 
Kan je met deze code de gegevens wel in de tabel zetten ipv er onder?

Met vr gr
Jack
Met mijn vorbeeld worden de gegevens in rij 1 gezet [B1:K1]
Wil je het in de 2e rij dan pas je aan tot: [B2:K2]
 
Ook kan hetzelfde wat sneller:

Code:
Private Sub CmdOK_Click()
  With Sheets("Data")
    .Unprotect
    .[B1:K1] = split(Format(TxtDatum.Text, "mm/dd/yyyy") & "|" & CboVanBron.Value & "|" & TxtVanBron.Text & "|" & TxtVanPost.Text & "|" & CboNaarBron.Value & "|" & TxtNaarBron.Text & "|" & TxtNaarPost.Text & "|" & TxtOmschrijving.Text & "|" & TxtInkomsten.Text & "|" & TxtUitgaven.Text,"|")
    .Protect
  End With
End Sub
@ SNB
DEZE CODE KAN NIET HET ZELFDE!!!:shocked:

Met vr gr
Jack
 
Laatst bewerkt:
@ SNB
DEZE CODE KAN NIET HET ZELFDE!!!:shocked:

Met vr gr
Jack

Mocht deze code niet doen wat er gedaan moet worden, dan verwacht men van een Mega Senior met 500 posts toch wel dat 'ie dat zelf kan aanpassen, temeer daar zulke codes in zoveel topics voorkomen (waaronder wellicht uw eigen topics).

Wigi
 
Volgens mij gaat het erom dat de gegevens in de volgende rij van het tabel (dus regel 8) wordt geplaatst ipv regel 14.
Of zie ik het verkeerd?

Met vriendelijke groet,


Roncancio
 
Volgens mij gaat het erom dat de gegevens in de volgende rij van het tabel (dus regel 8) wordt geplaatst ipv regel 14.
Of zie ik het verkeerd?

Met vriendelijke groet,


Roncancio

Helemaal juist! :thumb:
En hoe krijg ik dit voor elkaar?

Met vr gr
Jack
 
Verander in je code ...
Code:
    legeregel = MyRange.Range("B" & Rows.Count).End(xlUp).Row + 1

...in...

Code:
    legeregel = MyRange.Range("B3").End(xlDown).Row + 1

Met vriendelijke groet,


Roncancio
 
En wat gebeurd er nu denk als je bereik in de B-kolom niet aaneengesloten is? Of als B3 je eerste regel is?
 
En wat gebeurd er nu denk als je bereik in de B-kolom niet aaneengesloten is? Of als B3 je eerste regel is?

De code is gemaakt adhv het bestand dat TS heeft bijgevoegd.
TS wilt vanaf regel 3 dat gegevens worden toegevoegd.

Met vriendelijke groet,


Roncancio
 
Hallo
Nu ben ik wat aan het experimenteren met de code van SNB. Alleen weet ik niet hoe je in deze code naar een lege rij moet verwijzen. Kan iemand me daarbij helpen?
Code:
Private Sub CmdOK_Click()

[COLOR="Blue"]c3 = Sheets("Data").Cells(Rows.Count, 2).End(xlUp).Row + 1[/COLOR]
  With Sheets("Data")
    .Unprotect
    [COLOR="blue"].[c3][/COLOR] = Split(Format(TxtDatum.Text, "mm/dd/yyyy") & "|" & CboVanBron.Value & "|" & TxtVanBron.Text & "|" & TxtVanPost.Text & "|" & CboNaarBron.Value & "|" & TxtNaarBron.Text & "|" & TxtNaarPost.Text & "|" & TxtOmschrijving.Text & "|" & TxtInkomsten.Text & "|" & TxtUitgaven.Text, "|")
    .Protect
  End With


    
 
 End Sub
 
Code:
Private Sub CmdOK_Click()
  With Sheets("Data")
    .Unprotect
    [COLOR="Blue"].Cells(Rows.Count, 2).End(xlUp).offset(1).resize(,10)[/COLOR] = Split(Format(TxtDatum.Text, "mm/dd/yyyy") & "|" & CboVanBron.Value & "|" & TxtVanBron.Text & "|" & TxtVanPost.Text & "|" & CboNaarBron.Value & "|" & TxtNaarBron.Text & "|" & TxtNaarPost.Text & "|" & TxtOmschrijving.Text & "|" & TxtInkomsten.Text & "|" & TxtUitgaven.Text, "|")
    .Protect
  End With
End Sub
 
Hallo SNB

Hoe komt het dat bij jou code de getallen als tekst wordt geplaatst?
Valt dit in de code aan te passen?
Nu moet ik de getallen die er staan converteren naar getal, kan dit in de code?

met vr gr
Jack
 
Laatst bewerkt:
De getallen zijn gewoon getallen.
De uitlijning komt overeen met de tekstuitlijning.
Maar dat kun je eenvoudig aanpassen (met de hand of met VBA)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan