VBA Code help - Form control toggle button not working on Excel for Mac but fine on Windows

AgentKMK

New Member
Joined
Jul 22, 2018
Messages
9
Does anyone know what I need to change to get this VBA code to work in Excel for Mac?

It works fine in Windows.

It is a show/hide toggle for rows while the caption on the button changes as well.

I used a form button (not ActiveX).

Code:
Sub HideDone()
Dim Shp As Shape
   
Set Shp = ActiveSheet.Shapes(Application.Caller)
If Shp.TextFrame.Characters.Text = "Hide Done" Then
Shp.TextFrame.Characters.Text = "Show All"
Range("A1").AutoFilter 10, "<>11. Published", xlAnd, "<>Cancelled"
Else
Shp.TextFrame.Characters.Text = "Hide Done"
ActiveSheet.ShowAllData
End If
End Sub

The message I get is 
Run-time error 1004
Method 'TextFrame' of object 'Shape' failed

This code is highlighted in yellow
If Shp.TextFrame.Characters.Text = "Hide Done" Then
 
Last edited by a moderator:

Excel Facts

Return population for a City
If you have a list of cities in A2:A100, use Data, Geography. Then =A2.Population and copy down.

Forum statistics

Threads
1,215,377
Messages
6,124,597
Members
449,174
Latest member
chandan4057

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top