Registriert seit: 28.12.2014
Version(en): 2007
Hallo Forum, und zwar habe ich folgendes Problem. Ich habe versucht den höchsten %-Wert aus den eckigen Klammern aus Spalte A in Spalte B zu kopieren (siehe Bild). Ich habe es mit der =MAX() Funktion versucht, was leider nicht funktioniert hat. Ich habe die Werte die ich haben wollte leider manuell in Spalte B eintragen müssen. Da ich mit sehr großen Tabellen arbeiten werde, kann ich dies leider nicht manuell machen. Daher wollte ich fragen ob mir jmd. diesbezüglich weiterhelfen könnte und eventuell eine Excelformel für dies parat hätte. Vielen dank im Vorraus ! Efe
Registriert seit: 12.04.2014
Version(en): Office 365
Hallo Efe Hier mal ein Vorschlag. Arbeitsblatt mit dem Namen 'Tabelle2' | | A | B | C | D | E | F | G | H | I | J | K | 1 | 2.0 [77,45%] , 1.0 [19,97%], 1.5 [1,03%] | 5 | 20 | 34 | 12 | 27 | 40 | 77,45% | 19,97% | 1,03% | 77,45% |
Zelle | Formel | B1 | =SUCHEN("[";A1) | C1 | =SUCHEN("[";WECHSELN(A1;"[";"#";1)) | D1 | =SUCHEN("[";WECHSELN(WECHSELN(A1;"[";"#";1);"[";"#";1)) | E1 | =SUCHEN("]";A1) | F1 | =SUCHEN("]";WECHSELN(A1;"]";"#";1)) | G1 | =SUCHEN("]";WECHSELN(WECHSELN(A1;"]";"#";1);"]";"#";1)) | H1 | =--TEIL($A1;B1+1;E1-B1-1) | I1 | =--TEIL($A1;C1+1;F1-C1-1) | J1 | =--TEIL($A1;D1+1;G1-D1-1) | K1 | =MAX(H1:J1) |
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg |
Wir sehen uns! ... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Folgende(r) 1 Nutzer sagt Danke an shift-del für diesen Beitrag:1 Nutzer sagt Danke an shift-del für diesen Beitrag 28
• Efe
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo, falls Du ein Makro verwenden kannst, könntest Du es mit diesem versuchen. Code: Sub prcTestRegex() Dim re As Object, reMat As Object Dim lngC As Long, lngZ As Long Dim arrMax() Dim varWert Set re = CreateObject("vbscript.regexp") re.Pattern = "(\[\d+\,\d+\%\])" re.Global = True lngC = 1 While Cells(lngC, 1) <> "" Set reMat = re.Execute(Cells(lngC, 1)) If reMat.Count Then ReDim arrMax(reMat.Count - 1) For lngZ = 0 To reMat.Count - 1 arrMax(lngZ) = CDbl(Left(Mid(reMat(lngZ), 2), Len(Mid(reMat(lngZ), 2)) - 2)) Next lngZ Cells(lngC, 2) = Application.WorksheetFunction.Max(arrMax) End If lngC = lngC + 1 Wend End Sub
Gruß Stefan Win 10 / Office 2016
Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:1 Nutzer sagt Danke an Steffl für diesen Beitrag 28
• Efe
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi efe, nachdem ich mich jetzt auch schon eine ganze Weile mit dem Problem beschäftigt habe, möchte ich dir trotz zweier Lösungsvorschläge meinen nicht vorenthalten. Ich arbeite hier mit 1. Text in Spalten, als Trenner das Komma 2. dann 3 Hilfsspalten, die du ausblenden kannst Tabelle1 | A | B | C | D | E | F | G | 1 | 2.0 [77,45%] | 3.0 [51,5%] | 1.5 [60%] | 0,7745 | 0,515 | 0,6 | 77,45% | 2 | 0.00123 [7,5%] | 3.0 [51,5%] | 1.5 [40%] | 0,075 | 0,515 | 0,4 | 51,50% | Formeln der Tabelle | Zelle | Formel | D1 | =WECHSELN(TEIL(A1;FINDEN("[";A1)+1;LÄNGE(A1));"]";"")*1 | E1 | =WECHSELN(TEIL(B1;FINDEN("[";B1)+1;LÄNGE(B1));"]";"")*1 | F1 | =WECHSELN(TEIL(C1;FINDEN("[";C1)+1;LÄNGE(C1));"]";"")*1 | G1 | =MAX(D1:F1) | D2 | =WECHSELN(TEIL(A2;FINDEN("[";A2)+1;LÄNGE(A2));"]";"")*1 | E2 | =WECHSELN(TEIL(B2;FINDEN("[";B2)+1;LÄNGE(B2));"]";"")*1 | F2 | =WECHSELN(TEIL(C2;FINDEN("[";C2)+1;LÄNGE(C2));"]";"")*1 | G2 | =MAX(D2:F2) |
| Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8 Die Ergebnisspalte musst du mit % formatieren.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Folgende(r) 1 Nutzer sagt Danke an WillWissen für diesen Beitrag:1 Nutzer sagt Danke an WillWissen für diesen Beitrag 28
• Efe
Registriert seit: 13.04.2014
Version(en): 365
Hallo, oder auch so: Arbeitsblatt mit dem Namen 'Tabelle1' | | A | B | 15 | 2,0 [77,45%]; 1,0 [19,97%]; 1,5 [1,03%] | 77,45 | 16 | 2,0 [17,45%]; 1,0 [19,97%]; 1,5 [1,03%] | 19,97 | 17 | 2,0 [7,45%]; 1,0 [19,97%]; 1,5 [21,03%] | 21,03 |
Zelle | Formel | B15 | {=MAX(TEIL(A15;SUCHEN("#";WECHSELN(A15;"[";"#";SPALTE(A1:C1)))+1;SUCHEN("x";WECHSELN(A15;"%";"x";SPALTE(A1:C1)))-SUCHEN("#";WECHSELN(A15;"[";"#";SPALTE(A1:C1)))-1)*1)} | B16 | {=MAX(TEIL(A16;SUCHEN("#";WECHSELN(A16;"[";"#";SPALTE(A2:C2)))+1;SUCHEN("x";WECHSELN(A16;"%";"x";SPALTE(A2:C2)))-SUCHEN("#";WECHSELN(A16;"[";"#";SPALTE(A2:C2)))-1)*1)} | B17 | {=MAX(TEIL(A17;SUCHEN("#";WECHSELN(A17;"[";"#";SPALTE(A3:C3)))+1;SUCHEN("x";WECHSELN(A17;"%";"x";SPALTE(A3:C3)))-SUCHEN("#";WECHSELN(A17;"[";"#";SPALTE(A3:C3)))-1)*1)} |
Achtung, Matrixformel enthalten! | Die geschweiften Klammern{} werden nicht eingegeben. | Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine. |
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg |
Gruß
Edgar
Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag 28
• Efe
Registriert seit: 11.10.2014
Version(en): 12/2007&14/2010
Morgen, Fellas; am einfachsten ist diese Aufgabe wohl unter Zuhilfenahme von UDFs zu lösen, bspw so: =MAX(--Splint(MaskOn(MaskOn(A2;"mrk[]");"zw")))/100 Wobei das /100 nur erforderlich ist, wenn das Ergebnis als %-Zahl formatiert werden soll. Die beiden UDFs Splint und MaskOn wurden bereits im Internet veröffentlicht. Auf Wunsch kann ich Links oder auch gleich die Programme z.V. stellen. Gruß und Guten Rutsch (da bin ich weg)! :17: Castor
Folgende(r) 1 Nutzer sagt Danke an Castor für diesen Beitrag:1 Nutzer sagt Danke an Castor für diesen Beitrag 28
• Efe
Registriert seit: 28.12.2014
Version(en): 2007
Erst einmal vielen vielen Dank für die schnellen Antworten !:28:
Ich werde in den nächsten Tagen alle Antworten testen und sagen für welche ich mich schlussendlich entschieden habe. Ich bedanke mich nochmal vielmals bei allen Usern !!
Grüße Efe
Registriert seit: 28.12.2014
Version(en): 2007
Hallo Forum,
ich habe mich für BoskoBiatis (vielen Dank !) Formel entschieden, vielen Dank nochmal an alle !
|