Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Suche VBA

Empfohlene Antworten

Veröffentlicht

Hallo Zusammen,

ich habe folgenden Code:

Private Sub Worksheet_Change(ByVal Target As Range)

 If Target.Column = 5 Then 'Änderung in Spalte E

    If Target.Value <> "" Then

    lrow = Sheets("aaaa").Range("E65536").End(xlUp).Row + 1 '1. freie Zeile wird ermittelt

    Range("A" & Target.Row & ":I" & Target.Row).Cut Sheets("aaaa").Range("A" & lrow & ":I" & lrow)

    End If

 End If

End Sub

Status:

Mit diesem Code erreiche ich das bei einer Bedingung (hier Änderung in Spalte E) die Zeile in einem anderen Sheet reinkopiert werden.

Da aber zum Teil sehr große Lücken im Tabelle 1 damit entstehen möchte ich das die anderen Zeilen, bei dem die Bedingung nicht zutrifft, fortlaufend aufgerückt werden sodass ich zwischen den einzelnen Zeilen keine Lücken habe.

jemand eine Idee wie es gehen könnte?

Danke"!

Bearbeitet von Padoom

hey ho,

wenn ich das richtig verstanden habe, möchtest du nachdem du ausgeschnitten hast die (leere!?) zeile löschen in tabelle 1, oder?

da gibt es in vba die möglichkeit eine aktive zeile zu löschen...(activecell.row oder so)

wenn ichs falsch verstanden habe, dann berichtige mich...

hey ho,

wenn ich das richtig verstanden habe, möchtest du nachdem du ausgeschnitten hast die (leere!?) zeile löschen in tabelle 1, oder?

da gibt es in vba die möglichkeit eine aktive zeile zu löschen...(activecell.row oder so)

wenn ichs falsch verstanden habe, dann berichtige mich...

Genau die ausgeschnittene Zeile soll dann gleichzeitig auch gelöscht werden

naja dann löschst du die zeile nachdem du die daten ausgeschnitten hast...

musst dir nur die activecell.row anschauen und schon hast du deine Lösung...

Hi Padoom,

@gelang(while)t:

Eine Erläuterung zu ActiveCell.Row:

Row ist ein Attribut des Objekts ActiveCell, und beinhaltet die Nummer der Spalte der aktuellen Zelle. Anschauen kann man sich das ganze mit:

MsgBox ActiveCell.Row
Es ist keine Funktion die man aufrufen kann um irgendetwas zu löschen. nun zum eigentlichen Problem des Threads: Die Funktion um Zellen komplett zu löschen (also nicht nur deren Inhalt) heisst Delete. Bei dir macht es glaube ich Außerdem Sinn nicht einzelne Zellen sondern einen markierten Bereich zu löschen. D.h. du markierst den zu löschenden Bereich und rufst dann folgende Funktion auf:
Selection.Delete Shift:xlShiftUp

xlShiftUp gibt dabei die Richtung an, in welche die "übrigen Zellen" verschoben werden sollen (z.B. auch xlShiftLeft möglich)

hoffe das hilft dir weiter,

mfg

Bearbeitet von getCppKenntnisse()

okay...sehe ihr habt es falsch verstanden ;-)

mit activecell.row bekommste die aktive Zeile raus...

und dann kannste den "Rows(ActiveCell.Row).Delete"-Befehl anwenden und damit kannst du ganz unkompliziert und verständlich eine Zeile löschen!

Bearbeitet von gelang(while)t

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.