Fikse Macro Button Behavior i Beskyttede regneark

September 29  by Eliza

Robin stilt et spørsmål om en særhet i Excel. Hun skaper et regneark som inneholder en knapp tegnet med skjemaverktøylinjen, og tildeler en makro til knappen. Knappen fungerer fint til regnearket er beskyttet, så hele øverste delen av regnearket fungerer som en knapp. (Hånden ikonet vises uansett hvor du beveger musen, og når du klikker makro Utfører-du ikke trenger å klikke på knappen selv.)

Problemet oppstår ikke med alle elementer fra skjemaverktøylinjen, men bare oppstår under visse omstendigheter. Det oppstår først og fremst fordi et makro knapp er tilknyttet en celle (for eksempel celle B2), og deretter ble cellen slettet. Dette betyr at knappen er egentlig "fristilt", så Excel er forvirret med hensyn til hvor knappen tilhører. Når regnearket er beskyttet, fungerer Excel merkelig fordi det mener at knappen er "overalt" siden det ikke egentlig vet hvor knappen tilhører.

Den åpenbare løsningen er å sørge for at makroknappen er alltid knyttet til en celle som ikke får slettet. Oppheve beskyttelsen av arbeidsboken, velger snev av knappen nær kolonneoverskriftene, og flytte den til en celle du ønsker å assosiere det med. Reprotect regnearket og merkelig oppførsel skal forsvinne.

Hvis du ikke kan se knappen som er årsaken til problemet, kan det være fordi det er for lite. Løsningen på denne situasjonen er å kjøre en makro som søker for alle knappene i regnearket og gjør dem synlige. På ubeskyttet regneark, kjører du følgende:

Sub CheckShapes ()
Dim myShape Som Shape
For Hver myShape I ActiveSheet.Shapes
Med myShape
Hvis .Height <2 Deretter .Height = 20
Hvis .Width

Makro skritt gjennom alle figurene i regnearket og, hvis de har en høyde eller bredde mindre enn to piksler, øker deres høyde og bredde, slik at de er synlige. Nå bør du være i stand til å se makroknappen og kan dra den til et sted i regnearket eller slette det.

ExcelTips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset (2830) gjelder for Microsoft Excel 97, 2000, 2002, og 2003.