• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel voorbeeldmacro voor Autofilter werkt niet goed

Status
Niet open voor verdere reacties.

Gert Bouwmeeste

Verenigingslid
Lid geworden
28 nov 2007
Berichten
827
Op deze site heb ik een erg handig hulpmiddel gevonden om sneller met Autofilter te kunnen werken (voor Excel2003).

Het voorbeeld in de ZIP-file (AdvFilterBudget.xls) werkt uitstekend. Wanneer ik het echter in mijn sheet (Voorbeeldbestand met Autofilter) probeer te implementeren gebeurt er helemaal niets. Ik heb de naam FilterStatus gedefinieerd zoals aangegeven in voorbeeld.

In de bijgeslotenZIP-file zitten beide bestanden. Ik zoek me lam maar kom er niet uit. Iemand een idee?
 

Bijlagen

Gert Bouwmeeste,

Als je nu eerst eens kijk hoe het gemaakt is zul je zien dat het niet het zelfde is.
Dus logisch dat het dan niet goed werkt.
Maak het zoals in het voorbeeld, werkt het dan nog niet zet het bestandje dan hier zonder de dir die hij aanmaakt.
 
Laatst bewerkt:
Wim,

ik begrijp niet helemaal wat je bedoelt. Ik ben er ondertussen iets verder mee. Hij doet het wel, maar als ik van Exel-sheet wissel dan daarna niet meer. Ik blijf er nog wel even naar zoeken. Als niemand het weet zet ik het morgen voorlopig wel op opgelost.

Groet,
Gert
 
WiGi. Klopt. Hij doet het ook helemaal goed. Tot het moment dat ik de switch van ON op OFF zet.

Daarna loopt de macro vast (zie rood gemarkeerde)
Code:
Sub ShowArrows(lRow As Long, lCol As Long)
Dim c As Range
Dim i As Integer
i = Cells(lRow, lCol + 1).End(xlToRight).Column
Application.ScreenUpdating = False
For Each c In Range(Cells(lRow, lCol + 1), Cells(lRow, lCol + i))
[COLOR="Red"][B] c.AutoFilter Field:=c.Column, _
    Visibledropdown:=True[/B][/COLOR]
  c.Interior.ColorIndex = xlNone
Next
Application.ScreenUpdating = True
End Sub

Ook omgekeerd in de Sub HideArrows loopt de macro vast met de melding "Fout 1004 tijdens uitvoering: Methode Autofilter van klasse Range is mislukt"

Bestand opslaan en weer openen geeft vaak wel een oplossing.

Dus weer een stapje verder. Als deze fout er nu nog uit kan ben ik helemaal blij.:D
 
Je fout zit hem in de afstemming tussen je code en je opzet. In de code wordt bij de subs showarrows en hidearrows (waar jij de foutmelding krijgt) de laatste kolom van de autofilter bepaald door een end(xltoright). Aangezien je na je data (die loopt tot kolom P) geen extra lege kolom hebt in je opzet, wordt in de code de laatste kolom S. Op die laatste 3 kolommen probeert hij ook de pijl van de autofilter te tonen/verbergen, maar aangezien deze niet tot de autofilter behoort krijg je die foutmelding.

De makkelijkste oplossing is dus na kolom P in je opzet een lege kolom invoegen, zoals ook in het voorbeeldbestand gedaan is. Dan zal alles wel naar behoren werken.
Een andere mogelijkheid is je code aan te passen zodanig dat hij steeds het juiste gebied kiest waar een autofilter aanwezig is.
 
Finch,

Dat is 'm! Dank je wel. :thumb:

Nu dit werkt ga ik stoeien met het selecteren in één bestand en dan de gevonden selectie toepassen als filter in een ander bestand.

Weer een stap verder.

Bedankt en allemaal een goed, maar bovenal gezon 2009 gewenst!

Groet,
Gert
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan