PDA

Vollständige Version anzeigen : Betimmte Zelle nicht Löschen ActiveCell.Offset(-1, 0).Activate


bapec
28.07.2012, 20:21
Hallo Leute!

also ich habe folgendes Anliegen.

Und zwar möchte ich mit einem VBA code wenn dieser ausgeführt wird das dieser eine Zelle die oben drüber ist den Inhalt löscht:

Sub cancel()
ActiveCell.Offset(-1, 0).Activate
Selection.ClearContents
End Sub

dies funktioniert auch super, aller dings möchte ich nicht das diese löschung die erste Zelle also die A2 gilt, da dort die Überschrift steht.
Mit Blattschutz kommt ein laufzeit Fehler und das ist auch nicht die Lösung.
Mit On Error habe ich probiert komme aber auch nicht weiter.

Danke im Voraus
Stefan

josef e
28.07.2012, 20:29
<div style="width:98%; margin-left:5px; margin-right:15px; text-align:justify;">
Hallo Stefan,

<div style="background-color:#F5F5F5; border-width:2px; border-style: groove; border-color:#ff9966; padding:4px;"><nobr><span style="font-family:Courier New,Arial; font-size:8pt ;" ><b><span style="color:#0000FF"; >Sub</span> cancel()</b><br />&nbsp;&nbsp;<span style="color:#0000FF"; >With</span> ActiveCell<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF"; >If</span> .Row &gt; 2 <span style="color:#0000FF"; >Then</span> .Offset(-1, 0).ClearContents<br />&nbsp;&nbsp;<span style="color:#0000FF"; >End</span> <span style="color:#0000FF"; >With</span><br /><b><span style="color:#0000FF"; >End</span> <span style="color:#0000FF"; >Sub</span></b><br /><br /></span></nobr></div>


</div>

<div style="width:100px; text-align:center; color:white; font-style:italic; font-size:0.8em; font-family:Tahoma; background-color:royalblue;margin-left:5px; margin-top:15px; padding:4px; border:3px double darkblue;">&laquo; Gru&szlig; Sepp &raquo;</div>

bapec
28.07.2012, 20:55
Hallo Sepp,

Danke für die schnelle Antwort.
Leider funktioniert der Code nicht :-(
In der A1 Steht die Bezeichnung im meinen Fall "Artikelnummer"
wenn ich mehere artikeln habe und möchte den Letzten löschen führe ich das makro aus
Sub cancel()
ActiveCell.Offset(-1, 0).Activate
Selection.ClearContents
End Sub
das funzt aber wie gesagt wenn ich aber nix in der Zelle stehen habe und führe eben so das Makro aus dann wird die Überschrift "Artikelnummer" gelöscht und das soll nicht sein.

Gruß Stefan

josef e
28.07.2012, 22:14
<div style="width:98%; margin-left:5px; margin-right:15px; text-align:justify;">
Hallo Stefan,

mein Code funktioniert sicher!

Es wird immer die Zelle oberhalb der Aktiven gelöscht, außer Zeile 1, das war genau was du beschrieben hast!


</div>

<div style="width:100px; text-align:center; color:white; font-style:italic; font-size:0.8em; font-family:Tahoma; background-color:royalblue;margin-left:5px; margin-top:15px; padding:4px; border:3px double darkblue;">&laquo; Gru&szlig; Sepp &raquo;</div>

bapec
29.07.2012, 11:05
Hallo Sepp,

ich bitte um entschuldigung, eigene Dummheit, Sorry dafür.

Also dein Code funktioniert super, vielen dank dafür, allerdings brauche ich das die aktive Zelle auch mit nach oben springt, also in die gelöschte Zelle. Wenn ich mehrmals das Macro ausführe die Zelle immer wieder nach oben rückt, aber halt nicht in die A1 so wie das schon ist.

Wäre das auch möglich?

PS: Ich entschuldige mich noch mal, ich häte den Code richtig testen sollen.

josef e
29.07.2012, 11:31
<div style="width:98%; margin-left:5px; margin-right:15px; text-align:justify;">
Hallo Stefan,

das hättest du aber auch selber hinbekommen!

<div style="background-color:#F5F5F5; border-width:2px; border-style: groove; border-color:#ff9966; padding:4px;"><nobr><span style="font-family:Courier New,Arial; font-size:8pt ;" ><b><span style="color:#0000FF"; >Sub</span> cancel()</b><br />&nbsp;&nbsp;<span style="color:#0000FF"; >With</span> ActiveCell<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF"; >If</span> .Row &gt; 2 <span style="color:#0000FF"; >Then</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Offset(-1, 0).ClearContents<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Offset(-1, 0).Activate<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#0000FF"; >End</span> <span style="color:#0000FF"; >If</span><br />&nbsp;&nbsp;<span style="color:#0000FF"; >End</span> <span style="color:#0000FF"; >With</span><br /><b><span style="color:#0000FF"; >End</span> <span style="color:#0000FF"; >Sub</span></b><br /><br /></span></nobr></div>


</div>

<div style="width:100px; text-align:center; color:white; font-style:italic; font-size:0.8em; font-family:Tahoma; background-color:royalblue;margin-left:5px; margin-top:15px; padding:4px; border:3px double darkblue;">&laquo; Gru&szlig; Sepp &raquo;</div>

bapec
29.07.2012, 19:55
Hallo Sepp,

also das ist genau das was ich gebraucht habe, vielen Dank.
Der Code funktioniert Super.
Nochmals vielen Dank !!!