Dag Werner,
|| WEK || wrote:
Bijgaande een voorbeeld welke ik gebruik :
Rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1
Sub Blad1
Rem ' Author : WEK ([EMAIL PROTECTED])
Rem ' Versie : 22-09-2005
Rem ' Korte omschrijving :
Rem ' Macro om het tabblad de waarde te geven van de waarde in cel A1.
Rem ' Als er een 'WEK'balletje voor staat, dan wordt deze er afgekapt
Rem ' anders wordt de waarde overgenomen
Rem '
Rem Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Rem On Error Resume Next
Rem If Target = Range("A1") Then
Rem If Mid(Target, 1, 2) = ". " Then
Rem NaamTabblad = Mid(Target, 3, Len(Target) - 2) 'Wanneer de kop
begint met . dan moet het . eraf
Rem Else
Rem NaamTabblad = Target 'Bij het ontbreken van het . dan de
complete inhoud
Rem End If
Rem ActiveSheet.Name = NaamTabblad
Rem End If
Rem End Sub
End Sub
Deze macro zit bij elk blad. Op het moment dat je A1 wijzigt (met of zonder
. ) wordt de tabnaam gewijzigd.
Nu komen er allemaal Rem-s voor en doe deze het dus nu niet.
Dat stukje is vrij recht toe recht aan:
Sub ChangeActiveSheetNameFromA1
Dim oMyCell, oSheet
Dim s$
oMyCell =
ThisComponent.CurrentController.ActiveSheet.getCellByPosition(0, 0)
s = oMyCell.getString()
If Left(s, 2) = ". " Then s = Mid(s, 3, (Len(s)- 2))
oSheet = ThisComponent.CurrentController.getActiveSheet
oSheet.setName s
' NOTE!
' invalid sheet names, starting with " ", or including "-" "_" etc. are
ignored :-)
End Sub
Lastiger is om het te koppelen aan de gebeurtenis.
Hier kun je een bestandje downloaden die dat laat zien:
www.nouenoff.nl/downloads/ChangeActiveSheetNameFromA1.ods
Bekijk de macro's er in maar.
Hoewel ik een ding niet zo gauw op heb gelost, werkt het wel.
vr. groet
--
Cor Nouws
Arnhem - Netherlands
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]