Microsoft Excel

Herbers Excel/VBA-Archiv

per Makro erkennen, wieviel Zeilen | Herbers Excel-Forum


Betrifft: per Makro erkennen, wieviel Zeilen von: Mandy
Geschrieben am: 05.01.2010 10:34:00

Hallo,

kann man per Makro irgend wie abfragen, wieviel Zeilen in eine Zelle eingelesen wurden. Also unabhängig, ob die weiteren Zeilen durch einen bedingten Zeilenumbruch oder durch einen normalen Umbruch zustande kamen. Die Zahl, so, wie ich es auch sehe.

Danke Mandy

  

Betrifft: AW: per Makro erkennen, wieviel Zeilen von: Ramses
Geschrieben am: 05.01.2010 10:41:42

Hallo

"Bedingter Zeilenumbruch" eventuell, wenn du Zeichen für Zeichen analysierst und nach dem Zeichen 10 suchst,... dann hast du die Anzahl Zeilen entsprechend der Zeilenschaltung.

"Normaler Umbruch" z.B. durch Limitierung wegen Spaltenbreite: Nein

Gruss Rainer


  

Betrifft: AW: per Makro erkennen, wieviel Zeilen von: Mandy
Geschrieben am: 05.01.2010 10:44:08

HI,

dummerweise kann bei mir in einer Zelle beides vorkommen, also, dass ein bedingter Zeilenumbruch drin ist und dass eine Zeile mal umgebrochen wird, weil der inhalt zu lange ist.

Gruss
mandy


  

Betrifft: Dann ist mir keine Mehtode bekannt... von: Ramses
Geschrieben am: 05.01.2010 10:45:29

Hallo

... die Dein Problem sicher lösen kann.

Gruss Rainer


  

Betrifft: Z.Höhe .. per Makro erkennen, wieviel Zeilen von: Mike
Geschrieben am: 05.01.2010 10:56:45


Hey Mandy,

hab "nur" einen theoretischen Ansatz als Idee: vielleicht liesse sich die Zeilenanzahl
aus der Zeilenhöhe auslesen.

Gruss
Mike


  

Betrifft: AW: Z.Höhe .. per Makro erkennen, wieviel Zeilen von: Mandy
Geschrieben am: 05.01.2010 11:01:32

Hi,
Danke Mike.
An sowas habe ich auch schon gedacht, nur da tritt ein neues Problem auf: die Zellen sind zum Teil miteinander verbunden. Wenn man bei verbundenen Zellen versucht, die optimale Hohe einzustellen, funktioniert das auch nicht. Excel macht die Zelle dann nur so gross, dass man nur einen Teil sieht.
Damit kann ich aus der Zellenhöhe auch nicht ausrechnen, wie viel Zeilen theoretisch drin sein könnten.

Gruss
mandy


  

Betrifft: AW: Z.Höhe .. per Makro erkennen, wieviel Zeilen von: Ramses
Geschrieben am: 05.01.2010 11:02:03

Hallo

Das ist auch theoretisch wohl nicht möglich

A) Die Zeilenhöhe nicht mit dem Zellinhalt korrelieren muss
- Es kann mehr Text in der Zelle stehen als angezeigt wird
- Die Zeilenhöhe kann grösser sein als der tatsächliche Zellinhalt
B) Abhängigkeit des Zellinhalts zur Darstellung auch von der Schriftart/-grösse abhängig ist
C) Der automatische Zeilenumbruch der Zellformatierung auch noch Einfluss hat

Aber ich lasse mich überraschen ob es eine Lösung gibt :-)

Gruss Rainer


  

Betrifft: ich auch :-) von: Mandy
Geschrieben am: 05.01.2010 11:03:31




  

Betrifft: daher .. ich auch .. :-) von: Mike
Geschrieben am: 05.01.2010 11:11:39


Hey Rainer,

die Argumente sind mir natürlich auch durch den Kopf geflogen,
daher der "theoretische" Ansatz .. ;-)

Bleibt dann wohl die Frage (an Mandy), für was die Anzahl Zeilen ins solch
speziellen Tabellen überhaupt benötigt werden.

Gruss
Mike


  

Betrifft: AW: daher .. ich auch .. :-) von: Daniel
Geschrieben am: 05.01.2010 14:27:27

Hi

die beste Möglichkeit wäre wohl, den Inhalt über die SPLIT-Funktion ein ein Array aufzubrechen (als Trenneichen den Zeilenumbruch ASCII 10).
die Anzahl der Elemente des Arrays (Ubound) ergibt dann die Anzahl der erzwungenen Zeilen, dann müsste man noch jedes einzelne Element auf die Anzahl der Zeichen prüfen und hieraus die durch die Spaltenbreite bedingten Zeilenumbrüche ermitteln (Spaltenbreite sollte ja bekannt sein).
wenn man eine nichtproportionale Schriftart wählt (alle Zeichen gleich breit, z.B. Courier) müsste man damit einigermassen hinkommen.
allerdings muss man noch folgendes bedenken: bei Verbundenen Zellen ist die gesamtbreite grösser als die Summe der Einzelbreiten (für Columnwidth), da der Zwischensteg ja auch für Zeichen zur verfügung steht.
Es wird also schon einwenig Experimentierfreude notwendig sein, diese Berechnung so hinzurtrimmen, daß sie einigermassen präzise Ergebnisse liefert.
Gruß, Daniel


  

Betrifft: Aus den bereits genannten Gründen kann... von: Luc:-?
Geschrieben am: 05.01.2010 14:44:50

...es, auch theoretisch, keine vollkommene Lösung geben, Folks!
Vor allem wird die Zeilenhöhe nicht hilfreich sein; die Spaltenbreite schon eher, wenn der Text an derselben umbricht, was bei verbundenen Zellen ja ohnehin der Fall ist. Allerdings hält Excel in Abhängigkeit von Schriftart und -größe stets eine gewisse Abstandsreserve vor, so dass auch die stufenweise Suche nach den Zeichen, bei denen Xl automatisch umbricht [analog der Suche nach ZEICHEN(10)] vor einer (angenommenen bzw empirisch ermittelten) max Zeichenzahl pro Zeile, nicht automatisch zum richtigen Ergebnis führt. Der einzig sichere Weg wäre es deshalb, nichts dem Zufall zu überlassen und den Text mit einer udFkt wie bspw TxRows (im Herber-Archiv, letzter Link auf die Trägerdatei in einem ähnlichen Thread vom letzten Quartal 09) in Zeilen umzubrechen. Hier werden in Abhängigkeit von einer max Zeilenlänge, deren Verträglichkeit mit der jeweiligen Spaltenbreite empirisch überprüft wdn muss, unbedingte Umbrüche [ZEICHEN(10) — es gab hier zuvor eine gewisse Begriffsverwirrnis!] statt des bzw vor oder nach dem letzten Zeichen(s) vor dieser max Zeilenlänge, bei dem ein bedingter (nämlich primär durch die Spaltenbreite und sekundär durch das jeweilige Zeichen) Zeilenumbruch orthografisch möglich wäre, gesetzt. Durch Zählen von ZEICHEN(10) +1 käme man dann auf die tatsächliche Zeilenzahl.
Gruß + GesNeuJahr!
Luc :-?


  

Betrifft: AW: Aus den bereits genannten Gründen kann... von: Mandy
Geschrieben am: 05.01.2010 15:02:14

Hallo Luc,
deine Erklärung istr ja wirklich sehr umfangreich. :-) Aber ich befürchte, das ich das nicht alles nachvollziehen kann, weil ich davon nicht viel verstehe. :-(

Hast Du vielleicht ein kleines Excel Sheet als Beispiel, damit ich mir das mal ansehen und vielleicht verstehen kann ? :-)

Danke
Gruss Mandy


  

Betrifft: Die Suche mit der Forums-Google-Tante ist... von: Luc:-?
Geschrieben am: 05.01.2010 15:16:37

...mal wieder hoffnungslos, Mandy,
aber mit Altavista im WWW hat's geklappt. Hier ein Archiv-Link (war im letzten Quartal auch nur dieser Link). Bitte auch die neue Version vom 01.07. im gleichen Thread beachten!
Gruß Luc :-?


  

Betrifft: Und nu? Erledigt? owT von: Luc:-?
Geschrieben am: 07.01.2010 16:07:49

:-?


  

Betrifft: AW: Trotzdem wäre folgendes möglich von: Daniel
Geschrieben am: 05.01.2010 15:11:29

- Text in eine unverbundene leere Zelle kopieren
- dieser Zelle die gleiche Breite geben wie den verbundenen Originalzellen
- für diese Zelle die Zeilenhöhe automatisch einstellen
- Zeilenhöhe auslesen und über den Schriftgrad die Anzahl der Zeilen berechnen.
aber auch hier müsste man einwenig experimentieren, um die korrekte Formel zur Umrechnung zu finden, die dann für wenige bis viele Zeilen das richtige Ergebnis liefert.

Gruß, Daniel


Beiträge aus den Excel-Beispielen zum Thema "per Makro erkennen, wieviel Zeilen "