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

Vermijden dat tekst overschreven wordt door leeg veld

Status
Niet open voor verdere reacties.

DaveVdB

Gebruiker
Lid geworden
5 okt 2006
Berichten
5
Ik wil in een planningstool een tekst tonen op de dag waarop de taak start. Dit kan via een eenvoudige formule (=IF($B2=C$1;$A2;"")), doch vermits dat de velden hierachter niet leeg zijn wordt de tekst slechts gedeeltelijk getoond. Is hiervoor een oplossing?
In onderstaand voorbeeld is 'appel' het resultaat dat ik wens te bereiken. Doch omdat de velden hierna niet echt leeg staat krijg ik het resultaat 'pe' ipv 'peren'.

excel.png
 

Bijlagen

Of draai kolom en regels om.
Zet dus de datums verticaal ipv horizontaal en de appels/peren/kersen horizontaal ipv verticaal
 
Misschien dat dit een optie is?
Code:
=ALS($B3=L$1;HeelWoord($A3);"")

En de functie HeelWoord:
Code:
Function HeelWoord(Cel As String) As String
    Application.EnableEvents = False
    HeelWoord = Cel
    ActiveCell.ClearComments
    ActiveCell.AddComment Cel
    Application.EnableEvents = True
End Function

Het hele woord wordt dan getoond in de opmerking van de cel.
 
Je zou ook kunnen stellen dat die formules daar niet veel staan te doen...
Mij lijkt het dat je, bv. in combinatie met het advies van VenA, deze gewoon kan vervangen door een Change-event. Dan krijg je altijd netjes de ganse tekst te zien.
 

Bijlagen

Bedankt voor jullie reacties. De titelblokkering en voorwaardelijke opmaak had ik al in gebruik ;)
De change event in het voorbeeld dat je hebt gemaakt doet niet direct iets? Lijkt me anders wel een fijne oplossing (maar ik zal me even in de code moeten verdiepen want hiermee ben ik niet vertrouwd).
 
Dat zou wel degelijk iets moeten doen, namelijk als je een datum wijzigt in kolom B.
Als dat niet het geval is worden macro's waarschijnlijk geblokkeerd, maar dat kan ik van hier niet zien :rolleyes:
 
Zorg ervoor dat het gebruik van macro's toegestaan is. Find in combinatie met datums werkt vaak niet omdat het verkeerd toegepast wordt.

Met deze code in de module van het betreffende werkblad werkt het allemaal wat stabieler.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column = 2 And Target.Row > 1 And Target.Count = 1 Then
    If IsDate(Target) Then
      r = Application.Match(CDbl(Target.Value), Rows(1), 0)
      If IsNumeric(r) Then
        Target.Offset(, 1).Resize(, UsedRange.Columns.Count - Target.Column).ClearContents
        Target.Offset(, r - Target.Column) = Target.Offset(, -1).Value
      End If
    End If
  End If
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan