Zeilen Zusammenfügen und überschuss löschen
#11
Hallo,

diese Formel steht in z.B. P2:

=Summewenntext(Tabelle1!A:A;A2;Tabelle1!P:P;", ")

Wenn du diese Formel von P2 nach P3 kopierst dann ändert sich in der Formel automatisch das A2 auf A3.

Und das funktioniert bei dir nicht?

Was passiert denn wenn die Formel von P2 nach P3 kopierst?

Mir ist aufgefallen, dass in der Beispielsdatei die Spalte P als Text formatiert war, deswegen der Hinweis mit Daten-Text in Spalten damit die Formel korrekt arbeitet.

Kannst du mal die aktuelle Beispielsdatei mit den eingetragenen Formeln hochladen damit man sich das mal direkt am Original ansehen kann?
Gruß
Peter
[-] Folgende(r) 1 Nutzer sagt Danke an Peter für diesen Beitrag:
  • lorithas
Antworten Top
#12
Hi peter

Wie es aussieht war das Problem , das ich anscheinend die Spalte vorher auf standart formatieren muss.
Jetzt scheint es zu funktionieren , Excel ist jedoch noch am arbeiten und es scheint eine halbe ewigkeit zu dauern bei so vielen Zeilen ;)
Ich sag bescheid sobald es fertig ist.

lg Philipp
Antworten Top
#13
Ich habe noch das Problem , das die Funktion bei der datenmenge , die ich zu verarbeiten versuche, viel zu lange dauert.
Ich habe einen original Datensatz von ~150.000 Zeilen und nach einigen stunden bin ich immer noch bei 0% Vortschritt.

Ich habe auch versucht nur die ersten 5.000 Zeilen damit zu bearbeiten, allerdings auch ohne Erfolg.

Ist es möglich die Funktion


Function SummeWennText( _
                        SuchSpalte As Range, _
                        Suchbegriff As String, _
                        TextSpalte As Range, _
                        Optional TrennZeichen As String = "" _
                        ) As String
 
Dim arrS
Dim arrT
Dim i As Long
arrS = SuchSpalte.Value
arrT = TextSpalte.Value
For i = 1 To WorksheetFunction.Min(UBound(arrS, 1), UBound(arrT, 1))
    If arrS(i, 1) = Suchbegriff Then SummeWennText = SummeWennText & TrennZeichen & arrT(i, 1)
Next
SummeWennText = Mid(SummeWennText, Len(TrennZeichen) + 1)
End Function

So zu ändern, das Aus Spalte A nur die nächsten 20 Zeilen überprüft werden, ob die gleich sind
um den Prozess zu beschleunigen?

lg Philipp
Antworten Top
#14
Hallo Philipp,

das ist doch einfach nur eine Anpassung der Formel. Statt der ganzen Spalte nimmst Du nur 20 Zeilen, z.B.
=Summewenntext(Tabelle1!A2:A21;A2;Tabelle1!P2:P21;", ")

Übrigens, wenn Du die kompletten Spalten in der Formel einträgst, dann sind das keine 150.000 Prüfungen, sondern über eine Millionen ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#15
Hi Peter,

Erstmal danke und sry, Ich habe den Syntax vom Excel noch nicht so ganz durchschaut.

Ich habe nun das Problem, das es die Funktion nur bis Zeile 148 ausführt, und dann nichts mehr in den Zeilen steht, obwohl in Tabelle 1 ansich ein Eintrag ist.
Es wird wenn ich auf die Zelle klicke, auch die Formel angezeigt, jedoch wird bei mir kein Eintrag angezeigt.
Ich weiß nicht, was ich falsch mache.
Ich habe die ganze spalte als Zellen  formatieren als standart.
und dann noch Text in spalten gemacht.

Wenn ich auf Formel auswerten gehe bei einer der ersten, kommt das angezeigte Ergebniss.
jedoch später kommt hier dan nauch nichts mehr

Wenn ich auch Formeln- Fehlerüberprüfung gehe, sagt er das in Spalte B nicht als zahl formatiert ist.
Wenn ich das tue , bzw wenn ich testweise neu die Zahlen reinschreibe kommt aber noch der gleiche Fehler

Die Dateien sind zu groß um hier direkt im Forum hochzuladen.

hier die Tabelle in der ich die Formel noch nicht angewendet habe:

[
Dateiupload bitte im Forum! So geht es: Klick mich!
]

hier die Tabell in der Ich die Formel angewendet habe:

[
Dateiupload bitte im Forum! So geht es: Klick mich!
]

lg Philipp
Antworten Top
#16
Hallo,

sowas kann man doch einfach prüfen:

[html]
Arbeitsblatt mit dem Namen 'Tabelle2'
 PQ
150 166

ZelleFormel
P150=Summewenntext(Tabelle1!A150:A163;A150;Tabelle1!P150:P163;", ")
Q150=VERGLEICH(A150;Tabelle1!A:A;0)
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
[/html]

Du siehst also, dass das erste Auftreten des Textes aus A150 in Tabelle1!A166 ist. Deine Formel geht aber nur bis A163!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#17
Hi Edgar,

Danke für die Antwort, aber die Funktion die Ich verwende sollte in diesem Fall dann eben nur den Einen Eintrag bei Exchanges machen.

Wenn ich die Abfrage Reichweite von 15 auf 30 oder 50 erweitere , bleibt es immer noch hängen ziemlich am anfang.

Ich habe jetzt z.b. in Zeile 185 =Summewenntext(Tabelle1!A185:A214;A185;Tabelle1!P185:P214;", ")
Diese InstrIsin Hat z.b. nur einen Eintrag, was heißen würde , das nur der eine Wert von Exchanges genommen werden soll.


lg Philipp
Antworten Top
#18
Hallo,

Huh :20:  wenn eine Formel den Bereich bis Zeile 163 abdeckt und der Begriff steht in Zeile 166, dann ist das Ergebnis eine leere Zelle. Was erwartest Du sonst?????
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#19
Ähm also ich habe die Spalte markiert und  in Zeile 2 : =Summewenntext(Tabelle1!A2:A21;A2;Tabelle1!P2:P21;", ") mit strg + enter auf alle kopiert

bei mir wird das schon als fortlaufende Abfrage angezeigt, oder verstehe ich den Syntax hier falsch?

Bei mir wird nicht in zeile 166 nur bis zeile 163 angezeigt   ???????

Bei mri steht : =Summewenntext(Tabelle1!A166:A179;A166;Tabelle1!P166:P179;", ")

edit:

Ich habe jetzt auch nochmal die datei in meiner dropbox angesehen, da ist das auch nicht so

ka wo du die werte her hast
Antworten Top
#20
Hallo,

etwas schwer von Begriff:

[html]
Arbeitsblatt mit dem Namen 'Tabelle2'
 ABOPQR
149AT000034273821 1165

ZelleFormel
P149=Summewenntext(Tabelle1!A149:A162;A149;Tabelle1!P149:P162;", ")
Q149=ZÄHLENWENN(Tabelle1!A:A;A149)
R149=VERGLEICH(A149;Tabelle1!A:A;0)
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
[/html]
In P Deine Funktion, in Q wie oft die AT in Tabelle ein vorkommt und in R in welcher Zeile.
Hier der Bereich, den Deine Funktion abgrast:

[html]
Arbeitsblatt mit dem Namen 'Tabelle1'
 ANOP
149AT0000336839050000XVIE
150AT0000338926010000XVIE
151AT00003396840100000XVIE
152AT000033985801000XVIE
153AT00003399240100000XVIE
154AT000034154000,01XVIE
155AT000034192001XVIE
156AT0000342175040000XVIE
157AT00003421910365500XVIE
158AT0000342696010001AV5
159AT000034269601000XBER
160AT000034269601000XFRA
161AT000034269601000XHAM
162AT000034269601000XHAN
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
[/html]

Findest Du da irgendwo Deinen Suchbegriff????

Der steht nämlich hier:

[html]
Arbeitsblatt mit dem Namen 'Tabelle1'
 ANOP
165AT000034273801XVIE
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
[/html]

:20: :20: :20: :20:
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top


Gehe zu:


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