• 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.

"absolute" celverwijzing

  • Onderwerp starter Onderwerp starter jurr3
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

jurr3

Gebruiker
Lid geworden
4 jul 2012
Berichten
6
Graag zou ik willen weten of het volgende met behulp van een macro mogelijk is in excel:

Ik wil, na het toepassen van een filter de inhoud van een cel in een vooraf vastgestelde rij opslaan in een andere cel. Na het filteren komt er dus een andere waarde in deze cel en wil ik juist die inhoud in de andere cel gebruiken.

voorbeeld:

in cel B2 wil altijd de waarde weergeven die op rij 4 staat van kolom A. Het gaat me dus niet om de inhoud van cel A4 maar om de inhoud van de 4e rij van boven, dus meer absoluut en niet gelinkt aan de gefilterde rijnummers.

Alvast bedankt voor de moeite.

Voorbeeld excel:
Bekijk bijlage Voorbeeld probleem Absolute verwijzingen.xlsx
 
Laatst bewerkt:
Post even een voorbeeldbestandje en binnen de kortste keren is uw probleem opgelost.
 
Probeer deze code eens:
Code:
Sub Selecteer()

    If ActiveCell.Column <> 1 Then
        MsgBox "Je kunt alleen een keuze maken in kolom A. Verplaats de cursor naar die kolom en maak een nieuwe keuze.", vbOKOnly, "Kan geen selectie maken"
        Exit Sub
    End If
    ActiveCell.Copy
    [C3].PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveSheet.Range("$A$5:$E$100").AutoFilter Field:=1, Criteria1:=[C3].Value
    [D3].Select
    ActiveWorkbook.Save
    
End Sub
 
Beste Rob,

De bijgevoegde formule zorgt ervoor dat de cel die geselecteerd is in kolom A, geplaatst wordt in het betreffende vak. Echt probeer ik een manier te vinden waarmee ik niets anders dan de filter hoef te gebruiken om de tekst van het eerste filterresultaat in de daarvoor bestemde cel te krijgen.
 
Code:
Sub tst()
[C4] = ActiveSheet.AutoFilter.Range.Offset(1).SpecialCells(xlCellTypeVisible).Cells(1).Value
End Sub
 
Top!

Deze macro werkt! bedankt!

Nog 1 vraag: kan ik ook een macro toevoegen zodat het blad 'refresht' na het toepassen van een autofilter?

Alvast bedankt voor de moeite!
 
Code:
ActiveSheet.AutoFilterMode = False
Tenminste als je bedoelt dat alle data terug zichtbaar moet worden. :)
 
Dat bedoelde ik niet helemaal,

door het toepassen van de autofilter verandert de waarde in de cel door het toepassen van de door u voorgestelde macro. Deze nieuwe waarde wordt pas zichtbaar wanneer ik de werkmap refresh, of hercalculeer. Eigenlijk wil ik dat dit gebeurt direct nadat de voorwaarden in de filter zijn gewijzigd. (dus niet alle data terugzetten maar op een andere manier filteren).

Is dat mogelijk?

Bedankt!
 
Wat jij dus bedoelt is door het wijzigen v/d autofilter de macro automatisch gestart wordt ?
Voor zover ik weet is er geen bestaand event die dit kan bewerkstelligen, je zal dus een andere insteek moeten zoeken.
 
ik heb op een ander forum de volgende code gevonden om dit te kunnen doen:
http://www.mrexcel.com/forum/showthread.php?274109-Making-a-macro-run-after-autofilter

Code:
Private Sub Worksheet_Calculate()
Application.ScreenUpdating = False
  Dim lFilt As Long, lFiltArrows As Long
Dim lFiltRow As Long
On Error Resume Next
Application.EnableEvents = False

lFiltRow = Me.AutoFilter.Range.Row
lFiltArrows = Me.AutoFilter.Filters.Count

    If Me.FilterMode = True Then
        For lFilt = 1 To lFiltArrows
            If Me.AutoFilter.Filters.Item(lFilt).On Then
                Your_Macro_Here
            End If
        Next lFilt
    End If
Application.EnableEvents = True

On Error GoTo 0
End Sub

Er komt alleen een foutmelding bij

Code:
lFiltRow = Me.AutoFilter.Range.Row
lFiltArrows = Me.AutoFilter.Filters.Count

Ik heb zelf geen idee wat dit doet, maar het zou een uitkomst kunnen zijn.
 
Bekijk bijlage VB.xlsxIs het wellicht een idee om een (te verbergen) hulpkolom toe te voegen en dan gewoon te werken met een formule ipv een macro: zie bijlage
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan