• 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.

Teksterugloop in verwijzing vba

Status
Niet open voor verdere reacties.

Micheltje13

Gebruiker
Lid geworden
28 jan 2011
Berichten
132
Hallo allemaal,

Ik heb in mijn excel de volgende VBA toegevoegd.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim rng As Range
If Intersect(Range("table1"), Target) Is Nothing Then Exit Sub

Application.ScreenUpdating = False
Application.EnableEvents = False

Sheet3.Range("A9:A" & Sheet3.Range("Hoi").Row - 2).EntireRow.Delete
Sheet4.Range("A9:A" & Sheet4.Range("Hallo").Row - 2).EntireRow.Delete

Set rng = Range("Table1[#All]")
Sheet3.Range("A9:A" & 8 + rng.Rows.Count).EntireRow.Insert
Sheet3.Range("A9").Resize(rng.Rows.Count, rng.Columns.Count) = rng.Value
Sheet4.Range("A9:A" & 8 + rng.Rows.Count).EntireRow.Insert
Sheet4.Range("A9").Resize(rng.Rows.Count, rng.Columns.Count) = rng.Value

Application.CutCopyMode = False
Application.EnableEvents = True
Application.ScreenUpdating = True


End Sub


Deze VBA zorgt ervoor dat alles wat ik in de tabel op het tabblad INPUT invoer dat deze ook op andere tabbladen worden doorgevoerd. Nu zit ik met een probleem. In mijn tabel zit een kolom met notities. Echter kunnen hier een flinke tekst neergezet worden. Helaas hebben we die ruimte niet in de breedte ivm kopieren naar de mail of exporteren als pdf. Daarom wil ik een terugloop in de cel toevoegen. De export van het tabel dus de tabel met verwijzing pakt dit echter niet op zodra ik iets in het input tabel invoer.

Kort gezegd, wanneer ik een notitie invoer in de desbetreffende cel wil ik dat deze in de export tabel een terugloop krijg. Hoe kan ik dit verwezenlijken?
 
Zet van de betreffende cel dit attribuut:
.WrapText = True
 
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range

If Intersect(Target, Range("K9:Autofit")) Is Nothing Then Exit Sub
For Each c In Target
If Not c.HasFormula Then c.EntireRow.Autofit
Next c
objExcel.Sheets(Sheet3).Range("K9:Autofit").HorizontalAlignment = xlGeneral
objExcel.Sheets(Sheet3).Range("K9:Autofit").VerticalAlignment = xlTop
objExcel.Sheets(Sheet3).Range("K9:Autofit").WrapText = True
End Sub

Ik heb nu zoiets, maar dit werkt nog niet.. De rij moet namelijk ook autmoatisch aanpassen aan de rijen..
 
Wat betekent
Code:
[COLOR=#333333]Range("K9:Autofit")[/COLOR]
?

Misschien kun je een bestandje plaatsen met het verwachte resultaat.
 
Ik heb de tabbladen met de gegevens er even uit gehaald.

Wat je nu kunt zien is dat er in het tabblad input een tabel staat. Deze tabel breidt zichzelf uit wanneer je op het vakje notitie staat en op tab drukt. Vervolgens komen er op de andere 2 tabbladen een regel bij bij de output. Het enige wat moet gebeuren is dat er bij de andere 2 tabbladen onder het kopje notitie dat hier een tekstterugloop plaats vind en dat deze cellen zich automatisch aan de hoogte aanpassen.

Met Autofit bedoelde ik een cel die ik die naam had gegeven omdat er telkens een rij bij komt kun je volgens mij niet werken met bijvoorbeeld K39 want als er een rij bij komt wordt dit natuurlijk K40

Bekijk bijlage Offerteformulier test.xlsm
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan