Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

bestimmten Teil kopieren und löschen


Betrifft: bestimmten Teil kopieren und löschen von: Andre
Geschrieben am: 26.01.2019 08:28:59

Hallo Zusammen

Ich habe mal eine Frage
und zwar ich habe eine Userform mit ein Textfeld dieses soll den Inhalt in der Tabelle Hilfe Spalte B suchen dieser Wert kann öfferts auftauchen.Wen er den Wert gefunden hat soll in Spalte M das Datum eingetragen werden.
Jetzt sollen alle Werte ohne Formeln von Spalte A bis Spalte M in die Tabelle Erledigt eingefügt werden.
Danach soll diese Werte aus der Tabelle Hilfe gelöscht werden aber nur von Spalte B bis Spalte G so das die nachfolgenden Werte nach oben rücken

Gib es dafür eine Lösung oder hat jemand eine Idee wie man das lösen könnte
wäre über jede Info dankbar
Ich habe ein Testtabelle hochgeladen
vielen Dank im voraus

https://www.herber.de/bbs/user/127156.xlsx

  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Hajo_Zi
Geschrieben am: 26.01.2019 08:33:38

Das kann nicht serin, da in einer XLSX Datei kein VBA Code sein kann.

GrußformelHomepage

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.


  

Betrifft: ach so, dein Excel kann das ja nicht. o.w.T. von: Werner
Geschrieben am: 26.01.2019 12:00:56




  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Werner
Geschrieben am: 26.01.2019 10:40:02

Hallo Anrdre,

hier ohne Userform, über eine Inputbox.

Public Sub Verschieben()
Dim strSuche As String, loLetzte As Long

Application.ScreenUpdating = False

strSuche = Application.InputBox("Suchbegriff eingeben:", "Archivieren")
If strSuche <> "Falsch" Then
    If Not strSuche = vbNullString Then
        With Worksheets("Hilfe")
            If WorksheetFunction.CountIf(.Columns(2), strSuche) > 0 Then
                loLetzte = .Cells(.Rows.Count, 2).End(xlUp).Row
                .Range(.Cells(4, 2), .Cells(loLetzte, 13)).AutoFilter field:=1, _
                Criteria1:=strSuche
                With .AutoFilter.Range
                    .Offset(1).Resize(.Rows.Count - 1).Columns(12) = Date
                    .Offset(1).Resize(.Rows.Count - 1).Copy
                End With
                With Worksheets("Erledigt")
                    .Cells(.Cells(.Rows.Count, 2).End(xlUp).Offset(1).Row, 2).PasteSpecial _
                    Paste:=xlPasteValues
                    Application.CutCopyMode = False
                End With
                With .AutoFilter.Range
                    .Offset(1).Resize(.Rows.Count - 1).Delete shift:=xlUp
                End With
                .Range(.Cells(4, 2), .Cells(loLetzte, 13)).AutoFilter
            Else
                MsgBox "Der Suchbegriff wurde nicht gefunden."
            End If
        End With
    End If
End If

End Sub
Gruß Werner


  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Andre
Geschrieben am: 26.01.2019 11:25:49

Hallo Werner

Erstmal vielen dank für deine Antwort das ist genau das was ich gesucht habe nur ein kleines Problem ist noch das er die ganzen zeilen loscht es müssen nur die Spalten B bis G gelöscht da in den anderen Zellen ab H bis L formel hiter legt sind


  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Werner
Geschrieben am: 26.01.2019 11:40:21

Hallo Andre,

gelöscht oder nur geleert?
Wenn löschen: Nachfolgende Zeilen aufrücken oder nicht=
Was ist mit dem zuvor eingetragenen Datum in Spalte M?

Gruß Werner


  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Andre
Geschrieben am: 26.01.2019 12:08:49

Hallo Werner

Die Zeilen werden komplett gelöscht.
Es dürfen aber nur die Spalte B bis G und M gelöscht werden.
Spalte B bis G soll dann aufrücken.
Die restlichen Spalten enthalten Formeln die sich an den Spalten B bis G automatisch anpassen.


  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Werner
Geschrieben am: 30.01.2019 14:35:28

Hallo Andre,

vielleicht ja mit anschließendem Sortieren? Kann ich aber nicht abschließend beantworten, ich kenne deine Formeln ja leider nicht.

Public Sub Verschieben()
Dim strSuche As String, loLetzte As Long

Application.ScreenUpdating = False

strSuche = Application.InputBox("Suchbegriff eingeben:", "Archivieren")
If strSuche <> "Falsch" Then
    If Not strSuche = vbNullString Then
        With Worksheets("Hilfe")
            If WorksheetFunction.CountIf(.Columns(2), strSuche) > 0 Then
                loLetzte = .Cells(.Rows.Count, 2).End(xlUp).Row
                .Range(.Cells(4, 2), .Cells(loLetzte, 13)).AutoFilter field:=1, _
                Criteria1:=strSuche
                With .AutoFilter.Range
                    .Offset(1).Resize(.Rows.Count - 1).Columns(12) = Date
                    .Offset(1).Resize(.Rows.Count - 1).Copy
                End With
                With Worksheets("Erledigt")
                    .Cells(.Cells(.Rows.Count, 2).End(xlUp).Offset(1).Row, 2).PasteSpecial _
                    Paste:=xlPasteValues
                    Application.CutCopyMode = False
                End With
                With .AutoFilter.Range
                    .Offset(1).Resize(.Rows.Count - 1).Columns(12).ClearContents
                    .Offset(1).Resize(.Rows.Count - 1, .Columns.Count - 6).ClearContents
                End With
                .Range(.Cells(4, 2), .Cells(loLetzte, 13)).AutoFilter
                .Sort.SortFields.Add Key:=Range("B5:B" & loLetzte), _
                SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
                With ActiveWorkbook.Worksheets("Hilfe").Sort
                    .SetRange Range("B4:G" & loLetzte)
                    .Header = xlYes
                    .MatchCase = False
                    .Orientation = xlTopToBottom
                    .Apply
                End With
            Else
                MsgBox "Der Suchbegriff wurde nicht gefunden."
            End If
        End With
    End If
End If

End Sub
Gruß Werner


  

Betrifft: AW: bestimmten Teil kopieren und löschen von: Andre
Geschrieben am: 30.01.2019 16:34:40

Hallo Werner

Das ist genau was ich gesucht habe
Läuft super

Vielen dank
Ihr seid echt die besten hier im Forum
Daumen hoch


  

Betrifft: Gerne u. Danke für die Rückmeldung. o.w.T. von: Werner
Geschrieben am: 30.01.2019 16:43:34




Beiträge aus dem Excel-Forum zum Thema "bestimmten Teil kopieren und löschen"