Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1552to1556
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

eine Zelle auslassen beim Löschen

eine Zelle auslassen beim Löschen
30.04.2017 19:40:10
Christian
Hallo,
ich bitte um Hilfe.
Habe ein Makro dass u.a. diese Zeilen enthält:
Application.EnableEvents = False
ActiveSheet.Cells.Clear
Application.EnableEvents = True
gibt es die Möglichkeit, die Zelle D1 auszulassen, und nur den Rest zu löschen?
Danke für eure Hilfe
Christian

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: eine Zelle auslassen beim Löschen
30.04.2017 19:43:19
Oberschlumpf
Hi Christian
so?

Dim lWertD1 As Variant
Application.EnableEvents = False
lWertD1 = Range("D1").Value
ActiveSheet.Cells.Clear
Range("D1").Value = lWertD1
Application.EnableEvents = True

Hilfts?
Ciao
Thorsten
AW: eine Zelle auslassen beim Löschen
30.04.2017 22:21:48
Christian
Hallo Thorsten,
das sieht sehr gut aus, danke.
Christian
sorry war zu voreilig
30.04.2017 22:31:54
Christian
Sorry mir fällt jetzt erst auf, dein Makro belässt D1 nicht so wie es ist.
Vorher stand da die Formel =ANZAHL2(Tabelle2!A:A)/9
dein Makro hinterlässt das Ergebnis, nicht die Formel.
Schaust du bitte nochmal?
Christian
AW: sorry war zu voreilig
30.04.2017 23:02:09
Daniel
HI
das Prinzip ist ja, das alles! gelöscht wird und der Wert aus der Zelle vorher in einer Variable gesichert und dann zurückgeschrieben wird.
wenn in der Zelle jedoch eine Formel steht, musst du die Formel sichern und zurückschreiben.
Ersetze daher .Value durch .FormulaR1C1 (2x)
Gruß Daniel
Anzeige
AW: sorry war zu voreilig
30.04.2017 23:33:19
Gerd
Hallo Christian!
Sub bbb()
Dim lWertD1 As Variant
Application.EnableEvents = False
lWertD1 = Range("D1").Formula
Cells.Clear
Range("D1").Formula = lWertD1
Application.EnableEvents = True
End Sub
Gruß Gerd
AW: sorry war zu voreilig
01.05.2017 08:07:32
Christian
Hallo ihr beiden,
danke für eure Hilfe.
So funktioniert es.
Aber mich würde interessieren, was der Unterschied zwischen Formula und FormulaR1C1 ist...
es funktioniert beides.
Gruß
Christian
Unterschied ist die Schreibweise
01.05.2017 08:30:03
Matthias
Hallo
Das kannst Du Dir mal im Direktfenster des VBE anschauen


Formula gibt den Wert in A1-Schreibweise zurück
?activecell.Formula
=COUNTA(Tabelle2!A:A)/9
Formula in der Z1S1-Schreibweise (Zeile/Spalte oder auch Row/Column)
?activecell.FormulaR1C1
=COUNTA(Tabelle2!C[-1])/9
Dann gibts z.B. auch noch
?activecell.FormulaLocal
=ANZAHL2(Tabelle2!A:A)/9
Schau dazu auch mal in die Hilfe!
Gruß Matthias
Anzeige
AW: Unterschied ist die Schreibweise
01.05.2017 08:33:09
Christian
Hallo Matthias,
ok, denke das habe ich verstanden.
Danke
AW: sorry war zu voreilig
01.05.2017 08:39:28
Daniel
Hi
.Formular ist der Formeltext mit A1-Zelladressen,
.FormulaR1C1 ist der Formeltext mit R1C1-Zelladressen.
Der Unterschied ist, dass in R1C1 relative Zellbezüge auch relativ beschrieben werden, während in A1 die relativen Zellbezüge absolut beschrieben sind.
Solange du die Formel in die selbe Zelle zurück schreibst, ist es egal, da funktioniert beides gleich.
Solltest du deine Formel aber aus D1 kopieren und nach E1 zurück schreiben, wird es einen Unterschied geben.
Mit R1C1 wandert der Bezug auf A:A nach B:B.
Mit A1 bleibt er auf A:A (obwohl es ein relativer Bezug ist)
Außerdem wird in R1C1 die Spalte als Zahl angegeben und nicht als Buchstabe, das ist in der Programmierung günstiger.
Daher verwende ich in der Regel in Macros immer R1C1.
Gruß Daniel
Anzeige
AW: .Formular = .Formula ohne r
01.05.2017 09:55:49
Gerd
Gruß Gerd

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige