Migracja 2003 -> 2010

Wstęp

Nie chcę roztrząsać, czy wykonywać migrację czy nie. Wydaje mi się jednak, że jeżeli ktoś myśli poważnie o swoich projektach w Access’e to zna cykl wsparcia produktowego i wie że 2014-04-08 kończy się wsparcie dodatkowe, a podstawowe wygasło w kwietniu 2009…
Ja przyjąłem zasadę, że przechodzę co drugą wersje, czyli migruje z 2003 na 2010, tu chyba zrobie jednak wyjątek, bo z tego co widzę wersja 2013 niewiele zmieni w aplikacjach desktopowych.

Problem
Jeżeli migrujemy to m.in. po to by zyskać nowy wygląd, problem polega jednak na tym, że formularze z wersji wcześniejszych wyglądają tak:

To trochę nie pasuje do nowego wyglądu, jakiego byśmy oczekiwali po wersji 2010, poza tym trudno dodawać nowe funkcjonalności bez ujednolicenia wyglądu, ponieważ będzie się to wyraźnie odróżniało od “starych” części aplikacji.

Rozwiązanie

Możemy każdy formularz ręcznie przeedytować, ale jest to praca żmudna i raczej nie do wykonania przy większych projektach.
Ja rozwiązałem to w ten sposób, że stworzyłem formularz “wzorzec”, w którym umieściłem kontrolki do zmiany:

Teraz wystarczy za pomocą vba, otworzyć każdy formularz zmienić interesujące właściwości kopiując je z wzorcowych kontrolek i zapisać:

Dim f As Object
'otwórz formularz wzorca
DoCmd.OpenForm "wzorzec", acDesign

For Each f In CurrentProject.AllForms
    If f.Name <> "wzorzec" And f.Name <> "frmMigracja" Then
        DoCmd.OpenForm f.Name, acDesign
        UstawFormularz Forms(f.Name)
        DoCmd.Close acForm, f.Name, acSaveYes
    End If
Next

DoCmd.Close acForm, "wzorzec"

Kod do kopiowania własciwości:

Sub UstawFormularz(ByRef f As Form)


    With f.Section(acDetail)
        .AlternateBackColor = Forms("wzorzec").Section(acDetail).AlternateBackColor
        .AlternateBackShade = Forms("wzorzec").Section(acDetail).AlternateBackShade
        .AlternateBackThemeColorIndex = Forms("wzorzec").Section(acDetail).AlternateBackThemeColorIndex
        .AlternateBackTint = Forms("wzorzec").Section(acDetail).AlternateBackTint
        .BackColor = Forms("wzorzec").Section(acDetail).BackColor
        .BackShade = Forms("wzorzec").Section(acDetail).BackShade
        .BackThemeColorIndex = Forms("wzorzec").Section(acDetail).BackThemeColorIndex
        .BackTint = Forms("wzorzec").Section(acDetail).BackTint
        .SpecialEffect = Forms("wzorzec").Section(acDetail).SpecialEffect
    End With
    On Error Resume Next
    With f.Section(acHeader)
        .BackColor = Forms("wzorzec").Section(acHeader).BackColor
        .BackShade = Forms("wzorzec").Section(acHeader).BackShade
        .BackThemeColorIndex = Forms("wzorzec").Section(acHeader).BackThemeColorIndex
        .BackTint = Forms("wzorzec").Section(acHeader).BackTint
        .SpecialEffect = Forms("wzorzec").Section(acHeader).SpecialEffect
    End With
    With f.Section(acFooter)
        .BackColor = Forms("wzorzec").Section(acFooter).BackColor
        .BackShade = Forms("wzorzec").Section(acFooter).BackShade
        .BackThemeColorIndex = Forms("wzorzec").Section(acFooter).BackThemeColorIndex
        .BackTint = Forms("wzorzec").Section(acFooter).BackTint
        .SpecialEffect = Forms("wzorzec").Section(acFooter).SpecialEffect
    End With
    On Error GoTo 0
    For Each obj In f.Controls
        Select Case obj.ControlType
        Case acComboBox
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("ComboBox").BackColor
                .BackShade = Forms("wzorzec").Controls("ComboBox").BackShade
                .BackStyle = Forms("wzorzec").Controls("ComboBox").BackStyle
                .BackThemeColorIndex = Forms("wzorzec").Controls("ComboBox").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("ComboBox").BackTint
                .BorderColor = Forms("wzorzec").Controls("ComboBox").BorderColor
                .BorderShade = Forms("wzorzec").Controls("ComboBox").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("ComboBox").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("ComboBox").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("ComboBox").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("ComboBox").BorderWidth
                .BottomMargin = Forms("wzorzec").Controls("ComboBox").BottomMargin
                .BottomPadding = Forms("wzorzec").Controls("ComboBox").BottomPadding
                .FontSize = Forms("wzorzec").Controls("ComboBox").FontSize
                .Fontname = Forms("wzorzec").Controls("ComboBox").Fontname
                .ForeColor = Forms("wzorzec").Controls("ComboBox").ForeColor
                .ForeShade = Forms("wzorzec").Controls("ComboBox").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("ComboBox").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("ComboBox").ForeTint
                .GridlineColor = Forms("wzorzec").Controls("ComboBox").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("ComboBox").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("ComboBox").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("ComboBox").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("ComboBox").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("ComboBox").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("ComboBox").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("ComboBox").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("ComboBox").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("ComboBox").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("ComboBox").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("ComboBox").GridlineWidthTop
                .LeftMargin = Forms("wzorzec").Controls("ComboBox").LeftMargin
                .LeftPadding = Forms("wzorzec").Controls("ComboBox").LeftPadding
                .NumeralShapes = Forms("wzorzec").Controls("ComboBox").NumeralShapes
                .OldBorderStyle = Forms("wzorzec").Controls("ComboBox").OldBorderStyle
                .RightMargin = Forms("wzorzec").Controls("ComboBox").RightMargin
                .RightPadding = Forms("wzorzec").Controls("ComboBox").RightPadding
                .ScrollBarAlign = Forms("wzorzec").Controls("ComboBox").ScrollBarAlign
                .SpecialEffect = Forms("wzorzec").Controls("ComboBox").SpecialEffect
                .ThemeFontIndex = Forms("wzorzec").Controls("ComboBox").ThemeFontIndex
                .TopMargin = Forms("wzorzec").Controls("ComboBox").TopMargin
                .TopPadding = Forms("wzorzec").Controls("ComboBox").TopPadding
            End With
        Case acListBox
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("lstBox").BackColor
                .BackShade = Forms("wzorzec").Controls("lstBox").BackShade
                .BackThemeColorIndex = Forms("wzorzec").Controls("lstBox").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("lstBox").BackTint
                .BorderColor = Forms("wzorzec").Controls("lstBox").BorderColor
                .BorderShade = Forms("wzorzec").Controls("lstBox").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("lstBox").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("lstBox").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("lstBox").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("lstBox").BorderWidth
                .BottomPadding = Forms("wzorzec").Controls("lstBox").BottomPadding
                .FontSize = Forms("wzorzec").Controls("lstBox").FontSize
                .Fontname = Forms("wzorzec").Controls("lstBox").Fontname
                .ForeColor = Forms("wzorzec").Controls("lstBox").ForeColor
                .ForeShade = Forms("wzorzec").Controls("lstBox").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("lstBox").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("lstBox").ForeTint
                .GridlineColor = Forms("wzorzec").Controls("lstBox").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("lstBox").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("lstBox").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("lstBox").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("lstBox").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("lstBox").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("lstBox").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("lstBox").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("lstBox").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("lstBox").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("lstBox").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("lstBox").GridlineWidthTop
                .NumeralShapes = Forms("wzorzec").Controls("lstBox").NumeralShapes
                .OldBorderStyle = Forms("wzorzec").Controls("lstBox").OldBorderStyle
                .ScrollBarAlign = Forms("wzorzec").Controls("lstBox").ScrollBarAlign
                .SpecialEffect = Forms("wzorzec").Controls("lstBox").SpecialEffect
                .ThemeFontIndex = Forms("wzorzec").Controls("lstBox").ThemeFontIndex
            End With
        Case acOptionButton
            With f.Controls(obj.Name)
                .BorderColor = Forms("wzorzec").Controls("btnOption").BorderColor
                .BorderShade = Forms("wzorzec").Controls("btnOption").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("btnOption").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("btnOption").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("btnOption").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("btnOption").BorderWidth
                .BottomPadding = Forms("wzorzec").Controls("btnOption").BottomPadding
                .GridlineColor = Forms("wzorzec").Controls("btnOption").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("btnOption").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("btnOption").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("btnOption").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("btnOption").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("btnOption").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("btnOption").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("btnOption").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("btnOption").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("btnOption").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("btnOption").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("btnOption").GridlineWidthTop
                .OldBorderStyle = Forms("wzorzec").Controls("btnOption").OldBorderStyle
                .RightPadding = Forms("wzorzec").Controls("btnOption").RightPadding
                .SpecialEffect = Forms("wzorzec").Controls("btnOption").SpecialEffect
            End With
        Case acCheckBox
            With f.Controls(obj.Name)
                .BorderColor = Forms("wzorzec").Controls("chkBox").BorderColor
                .BorderShade = Forms("wzorzec").Controls("chkBox").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("chkBox").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("chkBox").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("chkBox").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("chkBox").BorderWidth
                .BottomPadding = Forms("wzorzec").Controls("chkBox").BottomPadding
                .GridlineColor = Forms("wzorzec").Controls("chkBox").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("chkBox").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("chkBox").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("chkBox").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("chkBox").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("chkBox").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("chkBox").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("chkBox").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("chkBox").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("chkBox").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("chkBox").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("chkBox").GridlineWidthTop
                .OldBorderStyle = Forms("wzorzec").Controls("chkBox").OldBorderStyle
                .RightPadding = Forms("wzorzec").Controls("chkBox").RightPadding
                .SpecialEffect = Forms("wzorzec").Controls("chkBox").SpecialEffect
            End With
        Case acTabCtl
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("tabCtrl").BackColor
                .BackShade = Forms("wzorzec").Controls("tabCtrl").BackShade
                .BackStyle = Forms("wzorzec").Controls("tabCtrl").BackStyle
                .BackThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("tabCtrl").BackTint
                '.Bevel = Forms("wzorzec").Controls("tabCtrl").Bevel
                .BorderColor = Forms("wzorzec").Controls("tabCtrl").BorderColor
                .BorderShade = Forms("wzorzec").Controls("tabCtrl").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("tabCtrl").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("tabCtrl").BorderTint
                .BottomPadding = Forms("wzorzec").Controls("tabCtrl").BottomPadding
                .Fontname = Forms("wzorzec").Controls("tabCtrl").Fontname
                .FontSize = Forms("wzorzec").Controls("tabCtrl").FontSize
                .ForeColor = Forms("wzorzec").Controls("tabCtrl").ForeColor
                .ForeShade = Forms("wzorzec").Controls("tabCtrl").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("tabCtrl").ForeTint
                '.Glow = Forms("wzorzec").Controls("tabCtrl").Glow
                .Gradient = Forms("wzorzec").Controls("tabCtrl").Gradient
                .GridlineColor = Forms("wzorzec").Controls("tabCtrl").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("tabCtrl").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("tabCtrl").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("tabCtrl").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("tabCtrl").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("tabCtrl").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("tabCtrl").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("tabCtrl").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("tabCtrl").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("tabCtrl").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("tabCtrl").GridlineWidthTop
                .HoverColor = Forms("wzorzec").Controls("tabCtrl").HoverColor
                .HoverForeColor = Forms("wzorzec").Controls("tabCtrl").HoverForeColor
                .HoverForeShade = Forms("wzorzec").Controls("tabCtrl").HoverForeShade
                .HoverForeThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").HoverForeThemeColorIndex
                .HoverForeTint = Forms("wzorzec").Controls("tabCtrl").HoverForeTint
                .HoverShade = Forms("wzorzec").Controls("tabCtrl").HoverShade
                .HoverThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").HoverThemeColorIndex
                .HoverTint = Forms("wzorzec").Controls("tabCtrl").HoverTint
                .PressedColor = Forms("wzorzec").Controls("tabCtrl").PressedColor
                .PressedForeColor = Forms("wzorzec").Controls("tabCtrl").PressedForeColor
                .PressedForeShade = Forms("wzorzec").Controls("tabCtrl").PressedForeShade
                .PressedForeThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").PressedForeThemeColorIndex
                .PressedForeTint = Forms("wzorzec").Controls("tabCtrl").PressedForeTint
                .PressedShade = Forms("wzorzec").Controls("tabCtrl").PressedShade
                .PressedThemeColorIndex = Forms("wzorzec").Controls("tabCtrl").PressedThemeColorIndex
                .PressedTint = Forms("wzorzec").Controls("tabCtrl").PressedTint
                .RightPadding = Forms("wzorzec").Controls("tabCtrl").RightPadding
                .Shape = Forms("wzorzec").Controls("tabCtrl").Shape
                .Style = Forms("wzorzec").Controls("tabCtrl").Style
                .TabFixedHeight = Forms("wzorzec").Controls("tabCtrl").TabFixedHeight
                .TabFixedWidth = Forms("wzorzec").Controls("tabCtrl").TabFixedWidth
                .ThemeFontIndex = Forms("wzorzec").Controls("tabCtrl").ThemeFontIndex
                .UseTheme = Forms("wzorzec").Controls("tabCtrl").UseTheme
            End With
        Case acOptionGroup
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("optGroup").BackColor
                .BackShade = Forms("wzorzec").Controls("optGroup").BackShade
                .BackStyle = Forms("wzorzec").Controls("optGroup").BackStyle
                .BackThemeColorIndex = Forms("wzorzec").Controls("optGroup").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("optGroup").BackTint
                .BorderColor = Forms("wzorzec").Controls("optGroup").BorderColor
                .BorderShade = Forms("wzorzec").Controls("optGroup").BorderShade
                .BorderThemeColorIndex = Forms("wzorzec").Controls("optGroup").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("optGroup").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("optGroup").BorderWidth
                .OldBorderStyle = Forms("wzorzec").Controls("optGroup").OldBorderStyle
                .SpecialEffect = Forms("wzorzec").Controls("optGroup").SpecialEffect
                .StatusBarText = Forms("wzorzec").Controls("optGroup").StatusBarText

            End With
        Case acLabel
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("lbl").BackColor
                .BackShade = Forms("wzorzec").Controls("lbl").BackShade
                .BackThemeColorIndex = Forms("wzorzec").Controls("lbl").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("lbl").BackTint
                .BorderColor = Forms("wzorzec").Controls("lbl").BorderColor
                .BorderShade = Forms("wzorzec").Controls("lbl").BorderShade
                .BorderThemeColorIndex = Forms("wzorzec").Controls("lbl").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("lbl").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("lbl").BorderWidth
                .BottomMargin = Forms("wzorzec").Controls("lbl").BottomMargin
                .BottomPadding = Forms("wzorzec").Controls("lbl").BottomPadding
                .FontSize = Forms("wzorzec").Controls("lbl").FontSize
                .Fontname = Forms("wzorzec").Controls("lbl").Fontname
                .ForeColor = Forms("wzorzec").Controls("lbl").ForeColor
                .ForeShade = Forms("wzorzec").Controls("lbl").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("lbl").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("lbl").ForeTint
                .GridlineColor = Forms("wzorzec").Controls("lbl").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("lbl").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("lbl").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("lbl").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("lbl").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("lbl").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("lbl").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("lbl").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("lbl").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("lbl").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("lbl").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("lbl").GridlineWidthTop
                .LeftMargin = Forms("wzorzec").Controls("lbl").LeftMargin
                .LeftPadding = Forms("wzorzec").Controls("lbl").LeftPadding
                .LineSpacing = Forms("wzorzec").Controls("lbl").LineSpacing
                .NumeralShapes = Forms("wzorzec").Controls("lbl").NumeralShapes
                .OldBorderStyle = Forms("wzorzec").Controls("lbl").OldBorderStyle
                .RightMargin = Forms("wzorzec").Controls("lbl").RightMargin
                .RightPadding = Forms("wzorzec").Controls("lbl").RightPadding
                .SpecialEffect = Forms("wzorzec").Controls("lbl").SpecialEffect
                .ThemeFontIndex = Forms("wzorzec").Controls("lbl").ThemeFontIndex
                .TopMargin = Forms("wzorzec").Controls("lbl").TopMargin
                .TopPadding = Forms("wzorzec").Controls("lbl").TopPadding

            End With
        Case acToggleButton    'przełącznik
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("btnToggle").BackColor
                .BackShade = Forms("wzorzec").Controls("btnToggle").BackShade
                .BackThemeColorIndex = Forms("wzorzec").Controls("btnToggle").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("btnToggle").BackTint
                .Bevel = Forms("wzorzec").Controls("btnToggle").Bevel
                .BorderColor = Forms("wzorzec").Controls("btnToggle").BorderColor
                .BorderShade = Forms("wzorzec").Controls("btnToggle").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("btnToggle").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("btnToggle").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("btnToggle").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("btnToggle").BorderWidth
                .BottomPadding = Forms("wzorzec").Controls("btnToggle").BottomPadding
                .FontBold = Forms("wzorzec").Controls("btnToggle").FontBold
                .FontItalic = Forms("wzorzec").Controls("btnToggle").FontItalic
                .Fontname = Forms("wzorzec").Controls("btnToggle").Fontname
                .FontSize = Forms("wzorzec").Controls("btnToggle").FontSize
                .FontUnderline = Forms("wzorzec").Controls("btnToggle").FontUnderline
                .FontWeight = Forms("wzorzec").Controls("btnToggle").FontWeight
                .ForeColor = Forms("wzorzec").Controls("btnToggle").ForeColor
                .ForeShade = Forms("wzorzec").Controls("btnToggle").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("btnToggle").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("btnToggle").ForeTint
                .Glow = Forms("wzorzec").Controls("btnToggle").Glow
                .Gradient = Forms("wzorzec").Controls("btnToggle").Gradient
                .GridlineColor = Forms("wzorzec").Controls("btnToggle").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("btnToggle").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("btnToggle").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("btnToggle").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("btnToggle").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("btnToggle").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("btnToggle").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("btnToggle").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("btnToggle").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("btnToggle").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("btnToggle").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("btnToggle").GridlineWidthTop
                .HoverColor = Forms("wzorzec").Controls("btnToggle").HoverColor
                .HoverForeColor = Forms("wzorzec").Controls("btnToggle").HoverForeColor
                .HoverForeShade = Forms("wzorzec").Controls("btnToggle").HoverForeShade
                .HoverForeThemeColorIndex = Forms("wzorzec").Controls("btnToggle").HoverForeThemeColorIndex
                .HoverForeTint = Forms("wzorzec").Controls("btnToggle").HoverForeTint
                .HoverShade = Forms("wzorzec").Controls("btnToggle").HoverShade
                .HoverThemeColorIndex = Forms("wzorzec").Controls("btnToggle").HoverThemeColorIndex
                .HoverTint = Forms("wzorzec").Controls("btnToggle").HoverTint
                .LeftPadding = Forms("wzorzec").Controls("btnToggle").LeftPadding
                .PressedColor = Forms("wzorzec").Controls("btnToggle").PressedColor
                .PressedForeColor = Forms("wzorzec").Controls("btnToggle").PressedForeColor
                .PressedForeShade = Forms("wzorzec").Controls("btnToggle").PressedForeShade
                .PressedForeThemeColorIndex = Forms("wzorzec").Controls("btnToggle").PressedForeThemeColorIndex
                .PressedForeTint = Forms("wzorzec").Controls("btnToggle").PressedForeTint
                .PressedShade = Forms("wzorzec").Controls("btnToggle").PressedShade
                .PressedThemeColorIndex = Forms("wzorzec").Controls("btnToggle").PressedThemeColorIndex
                .PressedTint = Forms("wzorzec").Controls("btnToggle").PressedTint
                .QuickStyle = Forms("wzorzec").Controls("btnToggle").QuickStyle
                .RightPadding = Forms("wzorzec").Controls("btnToggle").RightPadding
                .Shadow = Forms("wzorzec").Controls("btnToggle").Shadow
                .Shape = Forms("wzorzec").Controls("btnToggle").Shape
                .SoftEdges = Forms("wzorzec").Controls("btnToggle").SoftEdges
                .ThemeFontIndex = Forms("wzorzec").Controls("btnToggle").ThemeFontIndex
                .UseTheme = Forms("wzorzec").Controls("btnToggle").UseTheme
            End With
        Case acTextBox
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("txtBox").BackColor
                .BackShade = Forms("wzorzec").Controls("txtBox").BackShade
                .BackThemeColorIndex = Forms("wzorzec").Controls("txtBox").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("txtBox").BackTint
                .BeforeUpdate = Forms("wzorzec").Controls("txtBox").BeforeUpdate
                .BorderColor = Forms("wzorzec").Controls("txtBox").BorderColor
                .BorderShade = Forms("wzorzec").Controls("txtBox").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("txtBox").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("txtBox").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("txtBox").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("txtBox").BorderWidth
                .BottomMargin = Forms("wzorzec").Controls("txtBox").BottomMargin
                .BottomPadding = Forms("wzorzec").Controls("txtBox").BottomPadding
                .Fontname = Forms("wzorzec").Controls("txtBox").Fontname
                .FontSize = Forms("wzorzec").Controls("txtBox").FontSize
                .ForeColor = Forms("wzorzec").Controls("txtBox").ForeColor
                .ForeShade = Forms("wzorzec").Controls("txtBox").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("txtBox").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("txtBox").ForeTint
                .GridlineColor = Forms("wzorzec").Controls("txtBox").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("txtBox").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("txtBox").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("txtBox").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("txtBox").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("txtBox").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("txtBox").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("txtBox").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("txtBox").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("txtBox").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("txtBox").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("txtBox").GridlineWidthTop
                .LeftMargin = Forms("wzorzec").Controls("txtBox").LeftMargin
                .LeftPadding = Forms("wzorzec").Controls("txtBox").LeftPadding
                .LineSpacing = Forms("wzorzec").Controls("txtBox").LineSpacing
                .NumeralShapes = Forms("wzorzec").Controls("txtBox").NumeralShapes
                .OldBorderStyle = Forms("wzorzec").Controls("txtBox").OldBorderStyle
                .RightMargin = Forms("wzorzec").Controls("txtBox").RightMargin
                .RightPadding = Forms("wzorzec").Controls("txtBox").RightPadding
                .SpecialEffect = Forms("wzorzec").Controls("txtBox").SpecialEffect
                .ThemeFontIndex = Forms("wzorzec").Controls("txtBox").ThemeFontIndex
            End With
        Case acCommandButton
            With f.Controls(obj.Name)
                .BackColor = Forms("wzorzec").Controls("cmdButton").BackColor
                .BackShade = Forms("wzorzec").Controls("cmdButton").BackShade
                .BackStyle = Forms("wzorzec").Controls("cmdButton").BackStyle
                .BackThemeColorIndex = Forms("wzorzec").Controls("cmdButton").BackThemeColorIndex
                .BackTint = Forms("wzorzec").Controls("cmdButton").BackTint
                .Bevel = Forms("wzorzec").Controls("cmdButton").Bevel
                .BorderColor = Forms("wzorzec").Controls("cmdButton").BorderColor
                .BorderShade = Forms("wzorzec").Controls("cmdButton").BorderShade
                .BorderStyle = Forms("wzorzec").Controls("cmdButton").BorderStyle
                .BorderThemeColorIndex = Forms("wzorzec").Controls("cmdButton").BorderThemeColorIndex
                .BorderTint = Forms("wzorzec").Controls("cmdButton").BorderTint
                .BorderWidth = Forms("wzorzec").Controls("cmdButton").BorderWidth
                .BottomPadding = Forms("wzorzec").Controls("cmdButton").BottomPadding
                .Fontname = Forms("wzorzec").Controls("cmdButton").Fontname
                .FontSize = Forms("wzorzec").Controls("cmdButton").FontSize
                .ForeColor = Forms("wzorzec").Controls("cmdButton").ForeColor
                .ForeShade = Forms("wzorzec").Controls("cmdButton").ForeShade
                .ForeThemeColorIndex = Forms("wzorzec").Controls("cmdButton").ForeThemeColorIndex
                .ForeTint = Forms("wzorzec").Controls("cmdButton").ForeTint
                .Glow = Forms("wzorzec").Controls("cmdButton").Glow
                .Gradient = Forms("wzorzec").Controls("cmdButton").Gradient
                .GridlineColor = Forms("wzorzec").Controls("cmdButton").GridlineColor
                .GridlineShade = Forms("wzorzec").Controls("cmdButton").GridlineShade
                .GridlineStyleBottom = Forms("wzorzec").Controls("cmdButton").GridlineStyleBottom
                .GridlineStyleLeft = Forms("wzorzec").Controls("cmdButton").GridlineStyleLeft
                .GridlineStyleRight = Forms("wzorzec").Controls("cmdButton").GridlineStyleRight
                .GridlineStyleTop = Forms("wzorzec").Controls("cmdButton").GridlineStyleTop
                .GridlineThemeColorIndex = Forms("wzorzec").Controls("cmdButton").GridlineThemeColorIndex
                .GridlineTint = Forms("wzorzec").Controls("cmdButton").GridlineTint
                .GridlineWidthBottom = Forms("wzorzec").Controls("cmdButton").GridlineWidthBottom
                .GridlineWidthLeft = Forms("wzorzec").Controls("cmdButton").GridlineWidthLeft
                .GridlineWidthRight = Forms("wzorzec").Controls("cmdButton").GridlineWidthRight
                .GridlineWidthTop = Forms("wzorzec").Controls("cmdButton").GridlineWidthTop
                .HoverColor = Forms("wzorzec").Controls("cmdButton").HoverColor
                .HoverForeColor = Forms("wzorzec").Controls("cmdButton").HoverForeColor
                .HoverForeShade = Forms("wzorzec").Controls("cmdButton").HoverForeShade
                .HoverForeThemeColorIndex = Forms("wzorzec").Controls("cmdButton").HoverForeThemeColorIndex
                .HoverForeTint = Forms("wzorzec").Controls("cmdButton").HoverForeTint
                .HoverShade = Forms("wzorzec").Controls("cmdButton").HoverShade
                .HoverThemeColorIndex = Forms("wzorzec").Controls("cmdButton").HoverThemeColorIndex
                .HoverTint = Forms("wzorzec").Controls("cmdButton").HoverTint
                .ObjectPalette = Forms("wzorzec").Controls("cmdButton").ObjectPalette
                .PressedColor = Forms("wzorzec").Controls("cmdButton").PressedColor
                .PressedForeColor = Forms("wzorzec").Controls("cmdButton").PressedForeColor
                .PressedForeShade = Forms("wzorzec").Controls("cmdButton").PressedForeShade
                .PressedForeThemeColorIndex = Forms("wzorzec").Controls("cmdButton").PressedForeThemeColorIndex
                .PressedForeTint = Forms("wzorzec").Controls("cmdButton").PressedForeTint
                .PressedShade = Forms("wzorzec").Controls("cmdButton").PressedShade
                .PressedThemeColorIndex = Forms("wzorzec").Controls("cmdButton").PressedThemeColorIndex
                .PressedTint = Forms("wzorzec").Controls("cmdButton").PressedTint
                .QuickStyle = Forms("wzorzec").Controls("cmdButton").QuickStyle
                .Shadow = Forms("wzorzec").Controls("cmdButton").Shadow
                .Shape = Forms("wzorzec").Controls("cmdButton").Shape
                .SoftEdges = Forms("wzorzec").Controls("cmdButton").SoftEdges
                .ThemeFontIndex = Forms("wzorzec").Controls("cmdButton").ThemeFontIndex
                .Transparent = Forms("wzorzec").Controls("cmdButton").Transparent
                .UseTheme = Forms("wzorzec").Controls("cmdButton").UseTheme
            End With
        Case acPage, acImage, acRectangle, acPage, acCustomControl
            'typy których nie ruszam
        Case Else
            'typy które nie przewidziałem
            Debug.Print f.Name & "(" & obj.Name & "): " & obj.ControlType
        End Select
    Next

End Sub

To rozwiązuje sprawę, wygląd jest zgodny z wersją Access-a, możemy stosować motywy itd. Efekt:

Podsumowanie

Kod nie jest jakoś szczególnie skomplikowany, jako, że jego działanie jest jednorazowe nie optymalizowałem go pod żadnym kątem… Dla zainteresowanych przykładowa baza. Pełną listę właściwości dla kontrolek Access-a mozna znaleźć tutaj, rozbudowanie kodu o nowe właściwości nie powinno nastręczyć problemu.

Leave a Comment

NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

WordPress SEO fine-tune by Meta SEO Pack from Poradnik Webmastera
Skip to toolbar