Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1660to1664
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Unbestimmten Bereich löschen über Button

Unbestimmten Bereich löschen über Button
10.12.2018 18:17:36
Fred
Hallo zusammen
Ich würde gerne einen Bestimmten Bereich löschen und die Werte die darunter stehen sollten dann nach oben nachrutschen.
Der Bereich wäre im aktiven Sheet .
Dort sollte der Bereich A1 bis N10 immer unberührt bleiben.
das Makro sollte Also in Spalte A-N die letzte gefüllte Zelle finden davon dann 10 Zellen nach oben auch erhalten und den Rest löschen so das dann die 10 erhaltenen Zellen bis nach A11-N11 hochrutschen.
ich hoffe das war verständlich
Grüße Fred

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Unbestimmten Bereich löschen über Button
10.12.2018 18:44:49
Sepp
Hallo Fred,
eine Möglichkeit:
Modul Modul1 Option Explicit Sub loeschen() Dim lngLast As Long With ActiveSheet lngLast = lastCell("A:N") If lngLast > 20 Then .Range(.Cells(11, 1), .Cells(lngLast - 10, 1)).EntireRow.Delete End If End With End Sub Private Function lastCell(ByVal RangeAddress As String, Optional ByVal lastRow As Boolean = True) As Long Dim varLast As Variant If lastRow Then varLast = Evaluate("MAX(IF(" & RangeAddress & "<>"""",ROW(" & RangeAddress & ")))") Else varLast = Evaluate("MAX(IF(" & RangeAddress & "<>"""",COLUMN(" & RangeAddress & ")))") End If If IsError(varLast) Then lastCell = -1 Else lastCell = varLast End If End Function

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Unbestimmten Bereich löschen über Button
10.12.2018 18:53:49
Fred
Hallo Sepp
Vielen dank für Deine schnelle Antwort. leider funktioniert sie nicht. Wenn ich das löschmakro ausführe passiert leider nichts. es kommt auch keine Fehlermeldung.
Grüße Fred
AW: Unbestimmten Bereich löschen über Button
10.12.2018 18:56:52
Sepp
Hallo Fred,
bei mir funktioniert es, also wird wohl deine Beschreibung ungenügend sein.
Lade die Datei mit dem Code hoch in der es nicht funktioniert,
 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Unbestimmten Bereich löschen über Button
10.12.2018 19:10:00
Sepp
Hallo Fred,
so sieht die Tabelle nach dem Ausführen des Codes aus (habe nichts verändert!).
Werte

 ABCD
40000
9DatumHCL- Tank 1FE- Tank 1HCL -Tank 6
10 am 09.12.18 -13: 13: 4212530165,00
11 am 09.12.18 -13: 14: 10128,00 ?30200,00 ?
12 am 09.12.18 -13: 14: 29125,00 ?36165,00
13 am 09.12.18 -13: 25: 40130,00 ?25185,00 ?
14 am 10.12.18 -16: 58: 52130,00 ?28189,00 ?
15 am 09.12.18 -13: 13: 4212530165,00
16 am 09.12.18 -13: 13: 4212830200,00 ?
17 am 09.12.18 -13: 14: 10128,00 ?30200,00 ?
18 am 09.12.18 -13: 14: 29125,00 ?36165,00
19 am 09.12.18 -13: 25: 40130,00 ?25185,00 ?
20 am 10.12.18 -16: 58: 52130,00 ?28189,00 ?
21    
22    
23    


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Unbestimmten Bereich löschen über Button
10.12.2018 19:12:45
Fred
Hallo Sepp
bei mir geht es nicht .benutzt Du vieleicht eine höhere office version? ich benutze 2003
Grüße Fred
AW: Unbestimmten Bereich löschen über Button
10.12.2018 19:27:07
Sepp
Hallo Fred,
probier mal
Sub loeschen()
  Dim lngLast As Long

  With ActiveSheet
    lngLast = lastCell("A1:N10000")
    If lngLast > 20 Then
      .Range(.Cells(11, 1), .Cells(lngLast - 10, 1)).EntireRow.Delete
    End If
  End With
End Sub

Private Function lastCell(ByVal RangeAddress As String, Optional ByVal lastRow As Boolean = True) As Long
  Dim varLast As Variant

  If lastRow Then
    varLast = Evaluate("MAX(IF(" & RangeAddress & "<>"""",ROW(" & RangeAddress & ")))")
  Else
    varLast = Evaluate("MAX(IF(" & RangeAddress & "<>"""",COLUMN(" & RangeAddress & ")))")
  End If

  If IsError(varLast) Then
    lastCell = -1
  Else
    lastCell = varLast
  End If
End Function

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Wenn man die letzte benutzte Zeile auch an der Spalte A festmachen kann, dann genügt.
Sub loeschen()
  Dim lngLast As Long

  With ActiveSheet
    lngLast = Application.Max(20, .Cells(.Rows.Count, 1).End(xlUp).Row)
    If lngLast > 20 Then
      .Range(.Cells(11, 1), .Cells(lngLast - 10, 1)).EntireRow.Delete
    End If
  End With
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Unbestimmten Bereich löschen über Button
10.12.2018 19:33:44
Fred
Hallo Sepp
Der 2 te Code funktioniert super. Vielen Dank dafür
Grüße Fred
AW: Unbestimmten Bereich löschen über Button
10.12.2018 19:35:16
Fred
Nachtrag
es funktionieren beide Codes gut vielen Dank.
Grüße Fred

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige