Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile ausschneiden und in anderes Blatt verschiebe

Zeile ausschneiden und in anderes Blatt verschiebe
04.02.2008 17:52:02
Claudia
Hallo liebe Excel Helfer/innen,
ich möchte gerne über Workbook close folgendes erreichen.
Wenn im Tabellenblatt "VWN-Suche" in einer Zelle in Spalte F das Wort erledigt steht soll die ganze Zeile augeschnitten werden und in das Tabellenblatt "erledigte Vorgänge" in die erste freie Zeile hereinkopiert werden. Anschließend muss die Datei gespeichert werden und sich erst dann schließen.
Wer kann mir bitte helfen, mit meinen Makrokenntnissen komme ich leider nicht weiter.
Danke Euch.
Gruß
Claudia

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile ausschneiden und in anderes Blatt verschiebe
04.02.2008 18:31:30
Nepumuk
Hallo Claudia,
so?
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Call Move_Done_Transactions
    Me.Save
End Sub

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public Sub Move_Done_Transactions()
    Dim objCell As Range
    Dim lngRowsArray() As Long, lngRowCounter As Long, lngCopyRow As Long
    Dim strAddress As String
    With Worksheets("VWN-Suche")
        Set objCell = .Columns(6).Find(What:="erledigt", _
            After:=.Columns(6).Cells(.Rows.Count), LookIn:=xlValues, LookAt:=xlWhole)
        If Not objCell Is Nothing Then
            strAddress = objCell.Address
            Do
                lngRowCounter = lngRowCounter + 1
                Redim Preserve lngRowsArray(1 To lngRowCounter)
                lngRowsArray(lngRowCounter) = objCell.Row
                Set objCell = .Columns(6).FindNext(objCell)
            Loop While Not objCell Is Nothing And objCell.Address <> strAddress
            With Worksheets("erledigte Vorgänge")
                lngCopyRow = .Cells(.Rows.Count, 6).End(xlUp).Row
            End With
            For lngRowCounter = UBound(lngRowsArray) To 1 Step -1
                lngCopyRow = lngCopyRow + 1
                .Rows(lngRowsArray(lngRowCounter)).Cut
                Worksheets("erledigte Vorgänge").Rows(lngCopyRow).Insert Shift:=xlDown
                .Rows(lngRowsArray(lngRowCounter)).Delete
            Next
        End If
    End With
End Sub

Gruß
Nepumuk

Anzeige
AW: Zeile ausschneiden und in anderes Blatt versch
04.02.2008 19:11:57
Claudia
Hallo Nepumuk,
funktioniert einwandfrei. Vielen vielen Dank
Gruß
Claudia
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige