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

Makro für Vorzeichenwechsel

Makro für Vorzeichenwechsel
Jay
Hallo zusammen,
hab hier ein kleines Problem bei dem ich grad nicht weiterkomme.
Ich hab eine Datei, die enthält in einer Spalte sowohl positive als auch negative Werte.
Jetzt möchte ich nur bei den negativen Werten das Vorzeichen wechseln.
Da ich den Einstieg nicht gefunden hab, wie das Makro nur auf die negativen Werte geht hab ich erst mal einen Filter gesetzt:

Sub Filter_Negatives_Vorzeichen()
' Filter_Negatives_Vorzeichen
ActiveSheet.Range("$A$5:$AN$1299").AutoFilter Field:=10, Criteria1:="

Jetzt wende ich auf die verbliebenen Werte die Formel *-1 an

Sub Vorzeichenwechsel()
' Vorzeichenwechsel
ActiveCell.FormulaR1C1 = "=RC[-11]*R1C21"
Range("U6").Select
Selection.FillDown
Selection.Copy
Range("J6").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub

Funktioniert auch so weit ganz gut, jedoch nur bis Zeile 574!?! Mit xlDown sollte es doch eigentlich bis zum Ende der Tabelle gehen?!
Hat jemand vielleicht eine Idee?
Gerne auch einen eleganteren Weg, so dass das Makro von Anfang nur die negativen Werte erfasst und ich nicht erst über den Filter gehen muss.
Besten Dank im Voraus für eure Mühen.
Gruß
Jay

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro für Vorzeichenwechsel
14.04.2010 09:01:46
Tino
Hallo,
versuche es mal so.
Sub Vorzeichenwechsel()
Dim meAr
Dim nCount As Long

meAr = Range("J6", Cells(Rows.Count, 10).End(xlUp))

For nCount = 1 To Ubound(meAr)
    If IsNumeric(meAr(nCount, 1)) Then _
        meAr(nCount, 1) = Abs(meAr(nCount, 1) * 1)
Next nCount
    
Range("J6").Resize(Ubound(meAr)) = meAr

End Sub
Gruß Tino
Anzeige
AW: Makro für Vorzeichenwechsel
14.04.2010 09:25:49
Jay
Hallo Tino,
perfekt! Funktioniert einwandfrei.
Danke natürlich auch an die Anderen!
Grüße
Jay
AW: Makro für Vorzeichenwechsel
14.04.2010 09:02:52
ing.grohn
Hallo Jay,
schau mal ob Du Leerzeilen im Filterbereich hast.
Damit hatte ich große Schwierigkeiten.
Mit freundlichen Grüßen
Albrecht
AW: Makro für Vorzeichenwechsel
14.04.2010 09:13:36
Reinhard
Hallo Jay,
hast DU es schon mit der Funktion ABS(WERT) versucht?
Damit bekommst Du ausschließlich den ABSoluten Wert, also nur positive Werte.
Gruß
R.T.
das geht evtl. auch mit Formeln
14.04.2010 09:15:40
Matthias
Hallo
Alternativer Vorschlag:
Userbild

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige