Een tekstvak met een vaste breede en automatische hoogte

Status
Niet open voor verdere reacties.

jackfish

Gebruiker
Lid geworden
10 sep 2010
Berichten
297
Een tekstvak met een vaste breedte en automatische hoogte

Het lukt mij niet om de ingestelde breedte te behouden van een tekstvak als daarvan de hoogte automatisch aan de invoer wordt aangepast (in een userform). Is er een code waarmee dat wel gerealiseerd kan worden?

Dank in advance, Jackfish
 
Laatst bewerkt:
Niemand die het weet? Heb ik toch een goede vraag gesteld. Jackfish
 
In het volgende voorbeeld wordt de verticale positie van de eerste vorm in het actieve document ingesteld op 1 inch van de bovenkant van de pagina.
Code:
With ActiveDocument.Shapes(1)
    .RelativeVerticalPosition = wdRelativeVerticalPositionPage
    .Top = InchesToPoints(1)
End With

In het volgende voorbeeld wordt de verticale positie van de eerste en tweede vorm in het actieve document ingesteld op 1 inch van de bovenkant van de pagina.
Code:
With ActiveDocument.Shapes.Range(Array(1, 2))
    .RelativeVerticalPosition = wdRelativeVerticalPositionPage
    .Top = InchesToPoints(1)
End With

In het volgende voorbeeld wordt de verticale positie van de eerste vorm in het actieve document ingesteld op 1 inch van de bovenkant van de pagina.
Code:
With ActiveDocument.Shapes(1)
    .RelativeVerticalPosition = wdRelativeVerticalPositionPage
    .Top = InchesToPoints(1)
End With

In het volgende voorbeeld wordt de verticale positie van de eerste en tweede vorm in het actieve document ingesteld op 1 inch van de bovenkant van de pagina.

Code:
With ActiveDocument.Shapes.Range(Array(1, 2))
    .RelativeVerticalPosition = wdRelativeVerticalPositionPage
    .Top = InchesToPoints(1)
End With

Optie is ook:
Code:
CentimetersToPoints


en tot slot het volgende voorbeeld:
Code:
With ActiveDocument.Shapes(1)
    .Width = 20
    .Height = 40
   
End With



en voor het userform:
Code:
Private Sub TextBox1_Change()
TextBox1.Height = 30
End Sub
 
Laatst bewerkt:
Dank je wel ReilingJ, ik heb alle codes uitgeprobeerd en eigenlijk alleen maar foutmeldingen gekregen. Zonder twijfel ga ik ervan uit dat dit aan mij ligt :-)

Zou jij in een word bestandje een activex besturingselement 'tekstvak' willen invoeren en dan met een code laten zien hoe de ingestelde breedte behouden blijft, terwijl de hoogte variabel is (afhankelijk is van de hoeveelheid tekst die ingevoerd wordt? Daarmee verwacht ik vba beter te begrijpen. Bij voorbaat dank! Gr Jackfish
 
De meeste code's zijn voor een tekstvak op het formulier. Omdat ik dit niet helemaal uit je vraag haalde heb ik voor zowel voor tekstvak op formulier als tekstvak in userform de codes opgeschreven.

werkt wel, zie bijlage.
 

Bijlagen

Dank je wel ReilingJ voor de reactie. In een live-situatie zou ik je een biertje aanbieden.

Ik heb jouw formulier geopend en heb d code gezien. Wanneer ik het echter uitvoer blijkt dat het tekstvak op het userform zich niet automatisch aanpast. Ik heb wat ik voor ogen heb in een document bijgevoegd. Vind je het leuk om er nog eens naar te kijken?

Gr Jackfish

Bekijk bijlage voor ReilingJ met dank.doc
 
M.i. moet je het aantal tekens tellen dat in de regel zit. Telkens als je een aantal tekens hebt bereikt moet de hoogte worden aangepast. Heb nu even geen tijd. Zal er naar kijken.
Begin s.v.p. zelf vast met deze informatie.
 
Laatst bewerkt:
ReilingJ, alleereerst mijn excuses dat ik jouw reply heb gemist. Geweldig man! Het doet inderdaad precies wat het moet doen. Dank en hulde aan het platform dat HelpMij verschaft!
Stel dat ik een textbox wil invoeren in een formulier (niet een userform) welke aanpassingen moet je dan maken in de code?

Jackfish
 
Laatst bewerkt:
is dit niet voldoende ?

Code:
Private Sub TextBox2_Change()
   TextBox2.AutoSize = Len(TextBox2.Text) > 79
End Sub
 
Zie mijn vorige reactie. Alle code met "shape" heeft te maken met het tekstvak op formulier.
 
stichting correlatie

Voorziet dit forum ook in een soort helpdesk voor wanhopige gebruikers die het ondanks alle tips maar niet wil lukken :confused:
De breedte blijft gelijk maar de hoogte wil maar niet van de grond komen? ... en ik heb echt gezien dat het op het userform gewoon werkt.

De code van SNB, waarvoor dank, heb ik ook geprobeerd (geplaatst in ThisDocument) en ook hier werkt het bij mij niet.

Gr Jackfish

Bekijk bijlage Mijn frustratie.docx
 
Laatst bewerkt:
Dit is alleen werkbaar als een fixed lettertype gebruik.

Word heeft het zelf al ingebouwd: gebruik een tabel met 1 cel.

Een bestand met zich aanpassend tekstvak in de bijlage.
 

Bijlagen

Laatst bewerkt:
interessant. Kan ReilingJ zich opwerken tot Giga Senior of delft SNB het onderspit;) SNB stelt dat het onder voorwaarden kan en ReilingJ suggereert dat het gewoon mogelijk is, zoals met het UserForm. Wie deelt de beslissende macro uit?
 
Wie deelt de beslissende macro uit?

Die heb je al ontvangen. :)
Als je nu ook nog de 'breede' wijzigt in 'breedte'.....
 
Laatst bewerkt:
Het principe zit er inderdaad in. Ik mis het in de lijst met eigenschappen van de Textbox eigenlijk wel. Een vinkje achter breedte, fixed width.

Wanneer ik er een tekstbox onder plaats, dan schuift die niet automatisch op als devtekstbox in hoogte toeneemt. Ik zoek nog naar een oplossing hiervoor.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan