Tabblad selecteren past uitlijning cellen aan

Status
Niet open voor verdere reacties.

Visara

Gebruiker
Lid geworden
10 mrt 2019
Berichten
217
Goedeavond,

Kan iemand mij helpen deze programmacode aan te passen?
Wanneer Sheet("A4") wordt geselecteerd wordt de horizontale uitlijning van een range aangepast.
Private Sub Worksheet_Activate()
Call ActiveSheet.Unprotect
With Range("A72:T79")
.HorizontalAlignment = xlLeft
End With
ActiveSheet.Protect
End Sub

Ik zou graag het volgende willen bij het selecteren van Sheet("A4"):
Sheet("Invoer").Range("A9") bevat 3, 4 of 5 cijfers. Deze cijfers zijn opgemaakt als Tekst, zodat er bijvoorbeeld '050' ingevuld kan worden.
Afhankelijk van de inhoud van Sheet("Invoer").Range("A9") wil ik graag dat de horizontale uitlijning van Sheet("A4").Range("A72:T79") 'Left' of 'Center' wordt.
4 mogelijke situaties:
Sheet("Invoer").Range("A9") bevat 3 symbolen: dan Sheet("A4").Range("A72:T79") krijgt wanneer Sheet("A4") wordt geselecteerd .HorizontalAlignment = xlCenter
Sheet("Invoer").Range("A9") bevat 4 symbolen die links beginnen met een "1": dan Sheet("A4").Range("A72:T79") krijgt wanneer Sheet("A4") wordt geselecteerd .HorizontalAlignment = xlCenter
Sheet("Invoer").Range("A9") bevat 4 symbolen die links niet beginnen met een "1" : dan Sheet("A4").Range("A72:T79") krijgt wanneer Sheet("A4") wordt geselecteerd .HorizontalAlignment = xlLeft
Overige situaties ook .HorizontalAlignment = xlLeft

Dit 'moet' met een vba-code gedaan worden, toch? Het klopt dat dit niet met gewone Voorwaardelijk opmaak bereikt kan worden?

Als je het complete bestand wilt zien, de bladen zijn beveiligd zonder password.
Het 'Voorbeeldbestand' is een uitgeklede versie met alleen het nodige voor de vraag.

Mvg
 

Bijlagen

  • Compleet bestand.xlsm
    76 KB · Weergaven: 17
  • Voorbeeld eindresultaat.jpg
    Voorbeeld eindresultaat.jpg
    106 KB · Weergaven: 44
  • Voorbeeldbestand.xlsm
    15 KB · Weergaven: 21
Laatst bewerkt:
Vplgens mij komt dit aardig in de buurt....
Code:
[FONT=Verdana,Arial,Tahoma,Calibri,Geneva,sans-serif]Private Sub Worksheet_Activate()
  With Sheets("Invoer")
    Unprotect
      Range("A72").HorizontalAlignment = IIf(Left(.Range("B9"), 1) = 1 Or Len(.Range("B9")) <= 3, xlCenter, xlLeft)
    Protect
  End With
End Sub
[/FONT]
...alleen is het niet handig om samengevoegde cellen te gebruiken
 
Laatst bewerkt:
Hartstikke bedankt! Dat werkt :)

Het is wellicht niet handig om met samengevoegde cellen te werken, I know. Maar ik kan dit resultaat niet met andere programma's krijgen.
En het werkt, mede dankzij jouw bijdrage.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan