Avatar billede frankefritz Novice
27. september 2018 - 13:23 Der er 6 kommentarer

Overføre værdi fra sorteringfelt

Hej

Jeg arbejder med et excel ark, hvor flere faner har samme tabel med sorteringsfelt:

Land
Danmark
Tyskland
Sverige
Norge

Hvis jeg vælger f.eks Norge i første fane og gerne vil have, at Norge så er valgt i de andre faner, hvad skal jeg så? - det er vel noget VB?
Avatar billede kim1a Ekspert
27. september 2018 - 17:52 #1
I de andre faner kan du blot sætte en formel der siger =[første fane]!A2 hvis det er der dit sorteringsfelt er. Din udfordring er naturligvis hvis det er forskelligt hvilken fane du er i når du vil vælge så alle faner viser det samme.
Avatar billede frankefritz Novice
27. september 2018 - 19:38 #2
Hej Kim

Tak for svar, men..

Der er den samme sortering på de andre ark også, så jeg er overbevist om, at der skal bruges VBA (nok med en "tryk"knap).

Hvis jeg vælger f.eks Sverige i min sortering (dropdown) skal det automatisk også sorteres på tilsvarende vis på de andre faner - kan sende dig ark, så du bedre kan se hvad jeg mener.
Avatar billede kim1a Ekspert
28. september 2018 - 07:43 #3
Upload et ark så andre kan komme med deres input også.

Det du egentlig siger er at dine tabeller skal filtreres efter noget? Ikke at du har et felt med en valideringsliste.
Avatar billede frankefritz Novice
28. september 2018 - 11:03 #4
Her er filen:
https://www.dropbox.com/s/5iq161g3xlzt0k2/Pricelist.xlsx?dl=0

Hvis jeg vælger "Denmark" & "Germany" og size "1" & "2 to 5" i fane "Pris 1" vil jeg gerne værdierne for disse (og kun disse) vises i hhv. "Pris 2", "Pris 3" og "Total Price".
Avatar billede kim1a Ekspert
28. september 2018 - 20:05 #5
Jeg finder inspiration i denne kode:
Sub apply_autofilter_across_worksheets()
'Updateby Extendoffice 20160623
    Dim xWs As Worksheet
    On Error Resume Next
    For Each xWs In Worksheets
        xWs.Range("A1").AutoFilter 1, "=KTE"
    Next
End Sub

Men her mangler du at kunne hive de kriterier brugeren vælger på fane1 - der finder jeg dette:
https://stackoverflow.com/questions/44936926/how-do-i-get-filter-criteria-in-excel-2016-using-vba

Som dog har nogle shortcommings, f.eks. at den kun hiver et kriterie som jeg forstår det, og at den ikke fanger kolonnen.

Mit forslag vil derfor vælge at man skal skrive ved siden af i en celle hvad man vil filtrere på, eller også have det som en popup hvor man svarer.

Jeg har lavet førstnævnte løsning her:

Sub apply_autofilter_across_worksheets()
'Updateby Extendoffice 20160623
    Dim xWs As Worksheet
    Dim strFilterColumnB As String
    Dim strFilterColumnC As String
   
    strFilterColumnB1 = Range("D37").Value
    strFilterColumnB2 = Range("E37").Value
    strFilterColumnB3 = Range("F37").Value
    strfilterColumnC1 = Range("D39").Value
    strFilterColumnC2 = Range("E39").Value
    strFilterColumnC3 = Range("F39").Value
   
    On Error Resume Next
    For Each xWs In Worksheets
        With xWs.Range("B2:G2")
            .AutoFilter
            .AutoFilter Field:=1, Criteria1:=Array(strFilterColumnB1, strFilterColumnB2, strFilterColumnB3), Operator:=xlFilterValues
            .AutoFilter Field:=2, Criteria1:=Array(strfilterColumnC1, strFilterColumnC2, strFilterColumnC3), Operator:=xlFilterValues
        End With
    Next
End Sub

Jeg overvejede noget hvor man kunne læse række B når der er filtreret og således populere mine strFIlterColumn variable, men jeg er nok ikke helt skarp til at få den til at læse arrays - måske andre kan noget der.

Se filen:
https://www.dropbox.com/s/mh2eqgwaazlvl5c/Pricelist.xlsb?dl=0
Avatar billede frankefritz Novice
01. oktober 2018 - 13:37 #6
Hej Kim

Vi er ret tæt på det jeg ønsker - du er edermame skrap. Jeg arbejder på at tilpasse dit forslag og vender tilbage. Indtil videre MANGE tak - pænt af dig
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB