Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Wörter in Grossbuchstaben mit HTML-Tag (bold) versehen und Grosskleinschreibung
#1
Hallo zusammen
Ich hoffe, dass ihr alle gut ins neue Jahr gerutscht seid und wünsche allen ein tolles 2022

Ich habe eine Zutatenliste erhalten in der alle Allergene in Grossbuchstaben erfasst worden sind, teilweise sind es auch nur Wortteile, die man dann in Gross-Klein umwandeln und mit den bold-Tags versehen sollte

Wir kann ich das am Einfachsten lösen?

Beispiele:
Eingangsdaten:
Bio WEIZENRUCHMEHL, Wasser, Bio ROGGENKÖRNER, Alpensalz, Hefe

Gewünschtes Resultat:
Bio Weizenruchmehl<\b>, Wasser, Bio Roggenkörner<\b>, Alpensalz, Hefe



Eingangsdaten:
Zucker, Zitronensaft (SULFITE) (21.0%), Zucker, VOLLEI CH, BUTTER CH (10.7%), WEISSMEHL (WEIZENMEHL, WEIZENPROTEIN, WEIZENDUNST, Folsäure, Acerolapulver), Wasser, Couverture weiss (Zucker, KakaoBUTTER, VOLLMILCHPULVER, Emulgator Sonnenblumenlezithin) Kakao mind. 35%, Dekorpuder (Dextrose, WEIZENSTÄRKE, Zucker, Sonnenblumenöl, natürl. Aromen (mit MILCH)), Backtriebmittel (E341, E450, E500), Zitronen (.3%), Alpensalz, Farbstoffe (E151, E110, E102, E122, E133)

Gewünschtes Resultat:

Soll: 
Zucker, Zitronensaft (Sulfite<\b>) (21.0%), Zucker, Vollei<\b> CH, Butter<\b> CH (10.7%), Weissmehl<\b> (Weizenmehl<\b>, Weizenprotein<\b>, Weizendunst<\b>, Folsäure, Acerolapulver), Wasser, Couverture weiss (Zucker, Kakaobutter<\b>, Vollmichpulver<\b>, Emulgator Sonnenblumenlezithin) Kakao mind. 35%, Dekorpuder (Dextrose, Weizenstärke<\b>, Zucker, Sonnenblumenöl, natürl. Aromen (mit Milch<\b>)), Backtriebmittel (E341, E450, E500), Zitronen (.3%), Alpensalz, Farbstoffe (E151, E110, E102, E122, E133)

Bin ganz gespannt auf eure Ideen

Vielen Dank

Liebe Grüsse
Dany


Angehängte Dateien
.xlsx   Beispiel_Grossklein.xlsx (Größe: 9,09 KB / Downloads: 6)
Antworten Top
#2
Hallo,

eine Möglichkeit ist mit RegEx alle Worte in Grossbuchstaben zu finden:

Code:
RegEx.Pattern = "\b[A_Z]{4,}\"

Excel stellt eine Funktion für "1. Buchstabe GROSS, Restklein" zur Verfügung.

Aber zuerst gilt es zu klären, ob VBA und RegEx infrage kommen könnten.

mfg
Antworten Top
#3
Hallo,

anbei mein Vorschlag...


Angehängte Dateien
.xlsx   Beispiel_Grossklein.xlsx (Größe: 18,3 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an rate mit für diesen Beitrag:
  • Asterix99
Antworten Top
#4
Hallo,

wenn der gesamte Text in A1 steht:

Code:
Sub F_en()
Dim RegEx As Object: Set RegEx = CreateObject("vbscript.Regexp")
Dim WSF As WorksheetFunction: Set WSF = Application.WorksheetFunction
Dim Tx As String

RegEx.Global = True
RegEx.Pattern = "\b[A-Z]+\b"

Tx = Cells(1, 1)

Set RR = RegEx.Execute(Tx)
For i = 0 To RR.Count - 1
    If Len(RR(i)) > 3 Then Tx = Replace(Tx, RR(i), "<b>" & WSF.Proper(RR(i)) & "</b>")
Next i

Cells(5, 1) = Tx
End Sub

mfg


Angehängte Dateien
.xlsm   GrossKlein.xlsm (Größe: 16,42 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • Asterix99
Antworten Top
#5
Hallo rate mit
Vielen Dank für deine Hilfe, ich werde es austesten.

Liebe Grüsse und ein frohes, neues Jahr
Dany

Hallo Fennek
Vielen Dank für deine Hilfe.

Ich habe es bei mir am Mac kurz getestet und erhalte Fehlermeldungen, kann es sein, dass die RegEx-Geschichte «nur» auf Windows funktioniert?

Liebe Grüsse und ein frohes, neues Jahr
Dany
Antworten Top
#6
Hallo Fennek
Ich habe es nun in einer Windows-Umgebung ausgetestet und es funktioniert tadellos

Frage: Wenn ich nun mehrere tausend Einträge verarbeiten und die Ergebnisse in einem neuen Reiter (z.B. Ergebnis) in der gleichen Reihenfolge ausgeben möchte, wie passe ich das an?


Vielen Dank für deine tolle Hilfe

Liebe Grüsse
Dany
Antworten Top
#7
Hallo,

Annahmen:

- Ausgangsdaten in Spalte A Sheets("Tabelle1")
- Ergebnis in Sheets("Tabelle2")

Code:
Sub F_en()
Dim RegEx As Object: Set RegEx = CreateObject("vbscript.Regexp")
Dim WSF As WorksheetFunction: Set WSF = Application.WorksheetFunction
Dim Tx As String

RegEx.Global = True
RegEx.Pattern = "\b[A-Z]+\b"

for ii = 1 to cells(rows.count,1).end(xlup).row
Tx = Cells(ii, 1)

Set RR = RegEx.Execute(Tx)
For i = 0 To RR.Count - 1
    If Len(RR(i)) > 3 Then Tx = Replace(Tx, RR(i), "<b>" & WSF.Proper(RR(i)) & "</b>")
Next i

sheet("Tabelle2").Cells(ii, 1) = Tx
next ii
End Sub

ungeprüft

mfg
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste