• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Bepalen regels tekst binnen een cel?

  • Onderwerp starter Onderwerp starter keb
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

keb

Gebruiker
Lid geworden
20 feb 2011
Berichten
170
Ik heb een Exceltabel met relevante gegevens van een inventaris.

Per object presenteer ik die gegevens is een vaste layout, om vervolgens af te drukken
Soms past de hoeveelheid tekst niet in een venster (dit zijn samengevoegde cellen met terugloop).

Vraag: Is er een methode om het aantal regels tekst in deze samengevoegde cel te bepalen??
Als het aantal regels te groot is, wil ik de lange tekst opsplitsen.

P.s.
Ik weet dat je het aantal tekens kan bepalen, maar met diverse lege regels in de tekst is dat geen goede oplossing.
 
Is het misschien een idee om er een voorbeeldbestandje bij te doen?
PHP:
=LENGTE(SUBSTITUEREN(A1;TEKEN(10);""))
om maar ergens te beginnen.
 
#VenA Dank voor je snelle antwoord.

Helaas is het tellen van het aantal karakters niet voldoende. Soms zitten er lege regels in mijn tekst.
Eigenlijk zou ik het aantal zachte en harde returns willen weten, kortom het aantal regels binnen een cel.
 
Vandaar ook de eerste zin. =lengte(a1)-de formule in #2 geeft toch al inzicht in iets?
 
En werkt deze dan?
Code:
=LEN(A1)-LEN(SUBSTITUTE(A1;CHAR(10);""))+(LEN(A1)>1)
 
ginger,
Ik begrijp (len(A1)>1) niet goed. Geeft foutmelding
 
.... kortom het aantal regels binnen een cel.

Met terugloop hoef je geen enters te geven en dan wordt het bepalen van het aantal regels een erg lastige klus
Geef je daarentegen wel steeds die Alt+Enter dan zou het tellen hiervan (zoals hierboven gesuggereerd) jou het aantal regels geven.
 
Het is een beetje een workaround, maar ik heb deze functie (UDF) voor je bedacht...
Code:
Function TelRegels(rCel As Range)
    
    TelRegels = rCel.Height / Cells(Rows.Count, 1).Height
    
End Function

Ik heb dus géén idee of dit altijd goed werkt. De gok hierin is ook dat ik de maat neem van de laatste regel van een sheet. Het gaat hartstikke mis als je bijvoorbeeld met andere fonts of groottes gaat werken dan dat je gebruikt voor die laatste regel....
 
Opgelost:

- Bepaal het aantal Carrige Returns
- Bepaal de posities van de Carrige Returns
- Bepaal het aantal rijen tekst per tekstblok (op basis van het max aantal tekens per regel).
- Verdeel de originele tekst successievelijk in een aantal tekstblokken die in het uiteindelijke venster passen.

1) nCr = Len(strText) - Len(Replace(strText, Chr$(10), ""))
2) intSegment(n, 2) = Application.WorksheetFunction.RoundUp((intSegment(n, 1) - prevPosition) / rowLength, 0)
3) strPart(m) = Mid(strText, prevPosition, currPosition - prevPosition + 1) 'Each run it will be extended
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan