Forum: PC-Programmierung VBA - Buchstaben in String Großschrift


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von FloRidA (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich möchte einen bestimmten Buchstaben in einem String großschreiben. 
Mein erster Ansatz funktioniert aber nicht:

UCase (Mid(MyString, position, 1))

vermutlich weil ich mit Mid den Buchstaben nur auslesen aber nicht im 
String verändern kann.
Hat jemand einen möglichst einfachen Lösungsweg?

von Peter M. (r2d3)


Bewertung
0 lesenswert
nicht lesenswert
Nein.

Du musst jetzt noch den linken Teil, den schon erzeugten Großbuchstaben 
und den rechten Teil des Quellstrings miteinander verbinden.

Und wenn Du das öfters brauchst, gliederst Du das Ganze in eine Funktion 
aus.

von Michael A. (micha54)


Bewertung
0 lesenswert
nicht lesenswert
Peter M. schrieb:
> Und wenn Du das öfters brauchst, gliederst Du das Ganze in eine Funktion
> aus.

Hallo,

meinst Du, dass der TO bereits weiß, was eine Funktion ist. Ich meine 
damit, dass er die Doku für die benutzen Funktionen lesen und verstehen 
kann ?

Hört sich an, wie eine Hausarbeit. Das zweite, was man da lernen sollte 
ist Gruppenarbeit, meist kann einer lesen, der andere versteht das 
Geschriebene und einer kann Programmieren.

Gruß,
Michael

von FloRidA (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Peter M. schrieb:
> Nein.
>
> Du musst jetzt noch den linken Teil, den schon erzeugten Großbuchstaben
> und den rechten Teil des Quellstrings miteinander verbinden.
>
> Und wenn Du das öfters brauchst, gliederst Du das Ganze in eine Funktion
> aus.

Danke, hab es nun so gelöst:
Left(myString, position - 1) & UCase(Mid(myString, position, 1)) & 
Right(myString, len(myString) - position)



@Micha54
ich kann dein Geschreibsel nicht verstehen, werd es wohl an jemand 
anderen in der Gruppe weitergeben...

von Anka B. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
FloRidA schrieb:
> Danke, hab es nun so gelöst:
> Left(myString, position - 1) & UCase(Mid(myString, position, 1)) &
> Right(myString, len(myString) - position)

Das geht einfacher. Mid ist nicht nur Funktion, sondern auch Befehl.
Mid(MyString, position, 1) = UCase (Mid(MyString, position, 1))

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.