Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dollarzeichen aus String entfernen

Dollarzeichen aus String entfernen
18.07.2017 17:41:03
Herbert
Hallo,
ich erstelle eine String-Variable (Stringname = [Bereichsname].Address). Das Ergebnis ist ein String in dieser Ausführung: "$A$1:$B$10"
Nun möchte ich die $ aus diesem String löschen, so dass es dann einen String wie folgt ergibt: "A1:B10". Wie könnte ich das per VBA machen?
Servus

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dollarzeichen aus String entfernen
18.07.2017 17:42:49
Hajo_Zi
[Bereichsname].Address (false,false)

Ich gebe keinen Dank für eine Rückmeldung, da ich durch solche Beiträge nicht meine Beitragszahl erhöhen muss.
Rückmeldung ist ja in der Heutigen Zeit nicht üblich und die wenigen die eine Rückmeldung geben, mögen mir das verzeihen, das kein Danke für eine Rückmeldung kommt.
AW: Dollarzeichen aus String entfernen
18.07.2017 17:45:26
Herbert
Hallo Hajo,
g e n i a l!!! Vielen Dank!
Bis "Pfalz"! ;o)=)
Servus
AW: Dollarzeichen aus String entfernen
18.07.2017 17:56:33
Herbert
Hallo Hajo,
Deine Version funktioniert perfekt, doch was ich damit erreichen wollte klappt trotzdem nicht.
Also, ich wollte mit 2 Variablen den Sortierbereich festlegen und dann mit den Variablen sortieren. Excel sortiert mir aber nicht, wenn ich anstatt der festen Bereichsangabe ("A1:B10") die entsprechende Variable einsetze, obwohl die Variable die selben Angaben hat. Was mache ich hier falsch?
Hier der Code, den ich verwende:
Sub MediListeSortieren()
Dim sMediListe$, sMediListeÜ$
sMediListe = [Medi_Liste].Address(False, False)
sMediListeÜ = [Medi_ListeÜ].Address(False, False)
With ActiveSheet.Sort
.SortFields.Clear
.SortFields.Add Key:=Range(sMediListe), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
.SetRange Range(sMediListeÜ)
.Header = xlYes
.SortMethod = xlPinYin
Application.ScreenUpdating = False
.Apply
Application.ScreenUpdating = True
End With
End Sub
Servus
Anzeige
AW: kompletter Unfung was du machst.
18.07.2017 18:16:14
Daniel
Warum holst du dir aus dem den beiden Zellbereichen die Adressen als String und wandelst dann diese wieder in Zellbereiche um?
das wäre nur dann sinnvoll, wenn der Ausgangszellbereich [Medi_Liste]und er zu sortierende Zellbereich auf unterschiedlichen Tabellenblättern liegen, aber trotzdem die gleichen Adressen haben.
(Bspw [Medi_Liste] ist Tabelle1!A1:B10 und du willst Tabelle2!A1:B10 sortieren)
Außerdem wäre es hierfür völlig egal, ob du die Adresse mit oder ohne $ angibst.
die $-Zeichen sind nur dann relevant, wenn du die Adresse in eine Formel mit A1-Adressierungsart verwendest. In allen anderen Fällen in VBA spielt es keine Rolle, ob mit oder ohne $-Zeichen.
Wenn du die Medi_Liste sortiern willst, dann kannst du diese auch direkt als Zellbereich angeben und brauchst nicht diese Klimmzüge.
Wäre also erstmal zu klären, was und wo du überhaupt sorieren willst.
weiterhin ist es so, dass das Sortierkriterium immer nur eine Zelle sein sollte und kein Zellbereich.
und Wenn Zellbereich, dann beim normalen sortieren immer nur eine Spalte, aber nicht mehrere.
Gruß Daniel
Anzeige
AW: kompletter Unfung was du machst.
19.07.2017 08:05:23
Herbert
Hallo Daniel,
wenn Du nur recht hättest, dannhätte ich euch gar nicht bemühen müssen! Denn wenn ich in den Sortiercode anstatt der Bereichsnamen/Variablen, den Bereich fix angebe ("A1:B10") funktioniert der Code einwandfrei. Nur nicht mit einer Variablen, in der sich die "$" befinden oder mit "Range(Variable)". Oder habe ich Dich falsch verstanden?
Servus
AW: kompletter Unfung was du machst.
19.07.2017 09:25:58
Daniel
Es ist völlig egal, ob du Range("A1:B10") oder Range("$A$1:$B$10") schreibst.
Das macht keinen Unterschied.
Gruß Daniel
AW: kompletter Unfung was du machst.
19.07.2017 12:09:49
Herbert
Hallo Daniel,
Du hast recht! Ich hatte völlig übersehen, dass der "Key" ja in einer Spalten angegeben werden muss und nicht über mehrere Spalten. Du hast mich darauf gebracht und als ich es dann realisiert habe, fiel es mir wie "Schuppen aus den Haaren"! Na klar, der Key kann nur in einer Spalte gesucht werden!
Nun funzt es wunderbar mit und ohne "$", wie Du richtig festgestellt hast.
@Trotzdem auch noch mal einen Dank an Hajo, denn dadurch habe ich gelernt, dass man mit (False,False) die "$" entfernen kann! Prima!
Servus
Anzeige
WorksheetFunction.Substitute ?
18.07.2017 17:46:39
KlausF
Hi Herbert,
funktioniert das nicht einfach mit (?)
WorksheetFunction.Substitute(DeinString, "$", "")
Habe ich aber nicht ausprobiert ...
Gruß
Klaus
AW: WorksheetFunction.Substitute ?
18.07.2017 17:51:31
Herbert
Hallo Klaus,
Du hast recht, das funktioniert auch. Nur Hajo's Version ist einfacher. Trotzdem vielen Dank.
Servus
Yes
18.07.2017 17:55:53
KlausF
Nur Hajo's Version ist einfacher
Ja. Da habe ich soeben auch etwas gelernt ...
Gruß
Klaus
AW: Yes
18.07.2017 17:59:27
Herbert
Hallo Klaus,
und so geht es mir auch immer noch, ich lerne immer wieder noch etwas dazu, und das, obwohl ich schon seit 1994 mit Excel arbeite! Oder vielleicht sollte ich das ja garnicht sagen, sonst kommt noch einer und sagt "und da weißt du das und das und das alles noch nicht!". Recht hat er! Aber ich bin noch immer lernwillig! ;o)=)
Servus
Anzeige
Sicher hätte er, aber nicht nur deshalb... ;-] orT
19.07.2017 03:32:05
Luc:-?
Gruß, Luc :-?

31 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige