Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
828to832
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
828to832
828to832
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Teil einer Zeile löschen

Teil einer Zeile löschen
13.12.2006 15:13:11
Ben
Hallo,
Ich habe ein vermutlich relativ triviales Problem:
Ich möchte den Usern meiner Excel-Datei auf jede Zeile der Tabelle eine Schaltfläche "Zeile löschen" stellen. Nach Betätigung dieser Schaltfläche werden die Zellen A bis P der Zeile gelöscht.
Wie muss der Code aussehen, damit man nicht beim Code jeder Schaltfläche die Zeilennummer angebeen muss?
Vielen Dank für Eure Mithilfe und Gruss
Ben

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Teil einer Zeile löschen
13.12.2006 15:27:48
Reinhard
Hi Ben,
warum stellst du ihnen nicht einen Button zu verfügen, "Löschen der Spalten A-P der aktiven zeile" o.ä.
Nach deiner Idee, Schaltflächen aus "Formular" erhalten alle das gleiche Makro:
Option Explicit
Sub tt()
Dim zei As Long
zei = 1
While (Cells(zei, 1).Top < ActiveSheet.Shapes(Application.Caller).Top)
zei = zei + 1
Wend
Range("A" & zei - 1 & ":P" & zei - 1).ClearContents
End Sub

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
AW: Teil einer Zeile löschen
13.12.2006 15:29:14
Matthias
Hallo Ben,
vorausgesetzt, es sind Schaltflächen aus der Formular-Symbolleiste:

Sub loeschen()
Dim z As Long
z = ActiveSheet.Buttons(Application.Caller).TopLeftCell.Row
Range(Cells(z, 1), Cells(z, 16)).ClearContents
End Sub

Gruß Matthias
Anzeige
AW: Teil einer Zeile löschen
14.12.2006 09:10:12
Ben
Hallo Matthias
Dein Code funktioniert in der Testdatei bestens. In meiner eigentlichen Datei habe ich jedoch Kombinationsfelder drin (Steuerelemente), damit die User vordefinierte Einträge haben, aber auch manuelle Eingaben machen können, falls keine der Vorgaben zutrifft. Der Inhalt dieser Kombinationsfelder wird nicht gelöscht bzw. erst beim zweiten mal betätigen der Schaltfläche löschen. Den Kombinationsfeldern habe ich auch noch Makros zugeordnet, z.B.

Private Sub ComboBox31_Change()
If ComboBox31.Value = "BS" Then
ActiveSheet.Range("O7") = "OK"
End If
End Sub

Dies wiederum recht "läppisch" pro Zeile und nicht mit einer Schleife. Dazu 2 Rückfragen:
1. Wie könnte man das realisieren, ohne jeweils die Zeilennummer anzugeben?
2. Liegts an der Wenn-Bedingung, dass beim ersten mal Löschen nicht auch der Eintrag im Kombinationsfeld gelöscht wird.
Gruss
Ben
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige