Mijn vraag
Ik ben voor iemand bezig om een Excel te maken met eenvoudige VBA. Mijn code werkt wel in Windows, maar niet op een Mac. Met Mac ben ik totaal onbekend, maar ik heb wel gezien welk stuk code het probleem oplevert.
Een stuk van de code die op Windows wel werkt en op Mac niet:
Bij het debuggen op de Mac zie ik dat de macro vastloopt op regel 20. Dat komt omdat Excel dan al in de onderste cel staat en niet verder naar beneden kan.
Ik vermoed dat de code vastloopt in regel 12 bij het filteren op TRUE. In plaats van dat de macro filter op TRUE en die regels verwijdert, wordt er helemaal geen filter toegepast en verwijdert de macro alles.
Nogmaals, op mijn Windows-machine loopt het prima.
Relevante software en hardware die ik gebruik
Windows 10 - Excel365 - Engelse versie
Mac (<-- een nieuwe met nieuwe Excel, da's alles wat ik weet. Zie daar ook geen probleem per se omdat het eenvoudige code is) - Nederlandse versie
Wat ik al gevonden of geprobeerd heb
- ik heb
vervangen door
en
en
en
maar dat bood geen oplossing
- ik heb gekeken of de syntax anders is voor W of Mac, maar dat lijkt bij deze commands niet zo te zijn
- heb aan ChatGPT gevraagd hoe ik dit moet oplossen, maar ook zonder succes.
Ik vermoed dat het niet heel ingewikkeld is... maar goed, dat kunnen ook famous last words zijn.
Context: met de macro wil ik in een tabel filteren op de waarde TRUE. Alle regels met TRUE wil ik verwijderen. Daarna moet het filter uitgezet worden en ga ik naar de onderste regel van de tabel, plus één regel naar beneden om daar dan iets te plakken.
Ik ben voor iemand bezig om een Excel te maken met eenvoudige VBA. Mijn code werkt wel in Windows, maar niet op een Mac. Met Mac ben ik totaal onbekend, maar ik heb wel gezien welk stuk code het probleem oplevert.
Een stuk van de code die op Windows wel werkt en op Mac niet:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| ActiveWorkbook.Worksheets("database").ListObjects("Table3").Sort.SortFields. _ Add2 Key:=Range("Table3[check]"), SortOn:=xlSortOnValues, Order:= _ xlDescending, DataOption:=xlSortTextAsNumbers With ActiveWorkbook.Worksheets("database").ListObjects("Table3").Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With ActiveSheet.ListObjects("Table3").Range.AutoFilter Field:=12, Criteria1:= _ "TRUE" Range("A2").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select Selection.EntireRow.Delete ActiveSheet.ListObjects("Table3").Range.AutoFilter Field:=12 Range("A2").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select |
Bij het debuggen op de Mac zie ik dat de macro vastloopt op regel 20. Dat komt omdat Excel dan al in de onderste cel staat en niet verder naar beneden kan.
Ik vermoed dat de code vastloopt in regel 12 bij het filteren op TRUE. In plaats van dat de macro filter op TRUE en die regels verwijdert, wordt er helemaal geen filter toegepast en verwijdert de macro alles.
Nogmaals, op mijn Windows-machine loopt het prima.
Relevante software en hardware die ik gebruik
Windows 10 - Excel365 - Engelse versie
Mac (<-- een nieuwe met nieuwe Excel, da's alles wat ik weet. Zie daar ook geen probleem per se omdat het eenvoudige code is) - Nederlandse versie
Wat ik al gevonden of geprobeerd heb
- ik heb
code:
1
2
| Criteria1:= _ "TRUE" |
vervangen door
code:
1
2
| Criteria1:= _ "1" |
en
code:
1
2
| Criteria1:= _ "WAAR" |
en
code:
1
2
| Criteria1:= _ 1 |
en
code:
1
2
| Criteria1:= _ True |
maar dat bood geen oplossing
- ik heb gekeken of de syntax anders is voor W of Mac, maar dat lijkt bij deze commands niet zo te zijn
- heb aan ChatGPT gevraagd hoe ik dit moet oplossen, maar ook zonder succes.
Ik vermoed dat het niet heel ingewikkeld is... maar goed, dat kunnen ook famous last words zijn.
Context: met de macro wil ik in een tabel filteren op de waarde TRUE. Alle regels met TRUE wil ik verwijderen. Daarna moet het filter uitgezet worden en ga ik naar de onderste regel van de tabel, plus één regel naar beneden om daar dan iets te plakken.