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

VBA vraag Eerste lege cel in kolom D

Status
Niet open voor verdere reacties.

Mosselman

Gebruiker
Lid geworden
5 aug 2007
Berichten
61
Beste adviseurs...

Onderstaande VBA gemaakt en werkt in principe prima, tot op de regel met LastRow = Range("D65536").End(xlUp).Row + 1
Met die regel wil ik in een andere sheet data plakken in de eerste lege cel van Kolom D. Nu plakt hij de data in de eerste lege cel van kolom A. Hoe los ik dat op?

-----------------------------------------------------------------------------

Sub verplaats_Rens()
Sheets("Nieuw ingekomen punten").Select
Selection.Copy
intResult = MsgBox("Dit onderwerp werkelijk verplaatsen naar" & Chr(13) & vbTab & "RENS HUIGEN ?", vbYesNo, "Let op:")
If intResult = 7 Then Exit Sub
Sheets("Details - Rens Huigen").Select
LastRow = Range("D65536").End(xlUp).Row + 1
Cells(LastRow, 1).Select
ActiveSheet.Paste
Sheets("Nieuw ingekomen punten").Select
Selection.Delete

Exit Sub
End Sub
 
De volgende regel in je code aanpassen. De 1 in deze regel verwijst naar kolom A. Voor kolom D moet je dan 4 invullen.

Cells(LastRow, 1).Select -> Cells(LastRow, 4).Select
 
De volgende regel in je code aanpassen. De 1 in deze regel verwijst naar kolom A. Voor kolom D moet je dan 4 invullen.

Cells(LastRow, 1).Select -> Cells(LastRow, 4).Select

Super, dat het zo makkelijk kan zijn......
Ik leer iedere dag weer bij.

Dan heb ik nog 1 tip nodig:
Bij Selection.Delete wordt (nadat hij gekopieerd is naar een ander blad) de inhoud van de cel verwijderd en schuift alles op naar boven. Dat is helemaal goed, maar eigenlijk wil ik dat de hele regel verwijderd wordt en niet alleen die ene cel. Hoe pas ik dat aan? Met andere woorden: De hele regel waarin de geselecteerde cel staat moet dus leeggemaakt worden en de rest schuift dan omhoog.

Alvast bedankt!
 
Code:
Selection.EntireRow.Delete

Nog 1 tip: vermijd het gebruik van Select, Activate in je code. Het is onnodig en werkt vertragend

Mvg

Rudi
 
Code:
Selection.EntireRow.Delete

Nog 1 tip: vermijd het gebruik van Select, Activate in je code. Het is onnodig en werkt vertragend

Mvg

Rudi


Ok bedankt voor de tip.
Ik blijf nog even doorvragen, maar dit is echt de laatste.
Kan ik met een andere code de cellen alleen leegmaken i.p.v. dat hij de cellen leegmaakt en de rest opschuift naar boven? (Er mag dus een lege regel overblijven).
 
Tip 2: maak er VBA-code van

Code:
Sub verplaats_Rens()
  If MsgBox("Dit onderwerp werkelijk verplaatsen naar" & vbCr & vbTab & "RENS HUIGEN ?", vbYesNo, "Let op:") =vbYes Then 
    With selection
      .copy Sheets("Details - Rens Huigen").cells(rows.count,4).End(xlUp).offset(1)
      .clearcontents
    End With
  End If
End Sub
 
Laatst bewerkt:
Tip 2: maak er VBA-code van

Code:
Sub verplaats_Rens()
  If MsgBox("Dit onderwerp werkelijk verplaatsen naar" & vbCr & vbTab & "RENS HUIGEN ?", vbYesNo, "Let op:") =vbYes Then 
    With selection
      .copy Sheets("Details - Rens Huigen").cells(rows.count,4).End(xlUp).offset(1)
      .clearcontents
    End With
  End If
End Sub


Superbedankt, ik kan weer verder!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan