Avatar billede Klaus W Guru
26. august 2020 - 21:22 Der er 25 kommentarer

2 kriterier i et Lopslag

Hej
Hvis der i et Lopslag, skal ses på mere et kriterie, hvor skal det så foregå?

Jeg har i et ark hvor jeg ønsker Excel hente en værdig i et andet faneblad med et Lopslag, udfordringen ligge i at det faneblad der skal hente værdierne dette importeres jeg via VBA til Arket.
Er der nogen som har en ide til en løsning?

Klaus W
Avatar billede kim1a Ekspert
26. august 2020 - 21:54 #1
Skal vi forstå det sådan at opslaget skal foregå til forskellige ark alt efter et andet kriterie?

Ellers tror jeg ikke lige jeg forstår.
Avatar billede Klaus W Guru
26. august 2020 - 23:00 #2
Godaften jeg vender lige tilbage i morgen med en bedre forklaring

KW
Avatar billede Jan K Ekspert
26. august 2020 - 23:02 #3
Jeg er heller ikke sikker på at jeg forstår spørgsmålet. Hvis du har en Lospalg til et andet ark, og der er data i dette, er det vil ligegyldigt om de er tastet eller importeret?
Avatar billede Klaus W Guru
27. august 2020 - 11:52 #4
Hej igen så prøver jeg med lidt bedre forklaring.

Jeg importerer Ark fra en anden mappe ved hjælp af en knap (overfør ark) på Fanebladet VPL 2021.
Det jeg så gerne vil have Excel til er at overføre værdien til celle E8 i Fanebladet 6101. Den værdig finder jeg i Fanebladet VPL 2021 kolonne B.
Hvis jeg bare laver et LOPSLAG kommer der en kæde og den vil jeg ikke have. Jeg har prøvet med et LOPSLAG og INDIREKTE, men kan ikke få det til at funger. 

Jeg har også oploadet filen til Dropbox, håber det hjælper på forståelsen
https://www.dropbox.com/sh/dezoh2wa5t4j2ty/AACfn2FzbhjyjkRAr4J5wwxia?dl=0
KW
Avatar billede Jan K Ekspert
27. august 2020 - 12:22 #5
Hvis du med "kæde" mener, at der indsættes en reference til den mappe, du henter fra, tror jeg ikke at det kan undgås, da det jo er en anden fil.
Avatar billede kim1a Ekspert
27. august 2020 - 14:40 #6
En vba kan naturligvis finde værdien og sætte den ind fladt i dit ark hvis det er det den skal?
Avatar billede kim1a Ekspert
27. august 2020 - 14:52 #7
Udfordringen er at du får en kæde i dit originale 6101 ark? Det kan du komme til livs ved at indsætte opslagsformlen efter du har kopieret arket ind.

Formlen du skal have ind er noget a la dette:
=XLOOKUP(M11;'VPL 2021'!$E:$E;'VPL 2021'!$B:$B)

Derfor skal du have tilføjet i din vba:
utestet: sheets("6101").range("E8").formula = "xlookup(M11,'VPL 2021'!E:E,'VPL 2021'!A:A)
Husk på at du sikkert har variabler for fanenavne der fungerer bedre.

P.S Anders And bor på ParadisÆBLEvej ;-)
Avatar billede Klaus W Guru
27. august 2020 - 16:59 #8
Hej Ja det er det. Det forstår jeg ikke rigtig den del der omkring VBA. Hjælp.

Tak for hjælpen med Hr. And det er længe siden jeg har læst Anders And :-)

KW
Avatar billede Klaus W Guru
27. august 2020 - 17:01 #9
Hej igen Kim1a ref.#6 ja det er det den skal

KW
Avatar billede Klaus W Guru
27. august 2020 - 19:45 #10
Hej igen
Nu har jeg prøvet kan ikke rigtig se hvor jeg skal sætte VBA koden ind. Hvis jeg kun tager LOPSLAGet kommer kæden med og det er den jeg ikke ønsker.

KW
Avatar billede Klaus W Guru
28. august 2020 - 07:43 #11
Godmorgen
Jeg har fundet denne VBA kode og prøvet at indsætte den i filen Ankomstseddel  6101 men kan ikke få den til at fungere. Nogen hjælp.

Dim ws As Worksheet

Set ws = ThisWorkbook.Sheets

With ws
    .Range("E8").Formula = "=VLOOKUP(h6,VPL 2021!$A$3:$b$47,2,0)"
End With

End Sub



KW
Avatar billede kim1a Ekspert
28. august 2020 - 08:47 #12
Brug denne i stedet:
Sub Rektangelafrundedehjørner1_Klik()

Path = Range("h1")

Filename = Dir(Path & "*.xlsm")

Do While Filename <> ""

Workbooks.Open Filename:=Path & Filename, ReadOnly:=True

For Each Sheet In ActiveWorkbook.Sheets

Sheet.Copy After:=ThisWorkbook.Sheets(1)

ActiveSheet.Range("E8").Value = Application.XLookup(Range("M11"), ThisWorkbook.Sheets(1).Range("E:E"), ThisWorkbook.Sheets(1).Range("B:B"))

Next Sheet

Workbooks(Filename).Close

Filename = Dir()

Loop
                   
End Sub

Jeg har indsat denne linje:
ActiveSheet.Range("E8").Value = Application.XLookup(Range("M11"), ThisWorkbook.Sheets(1).Range("E:E"), ThisWorkbook.Sheets(1).Range("B:B"))

På den måde slår den værdien op hver gang du kopierer nyt ark.
Avatar billede Klaus W Guru
28. august 2020 - 15:26 #13
Hej Kim1a
Jerg kikke på det når jeg kommer hjem, på for hånd tak
KW
Avatar billede Klaus W Guru
28. august 2020 - 19:40 #14
Hej Kim1a
Jeg har prøvet at indsætte den VBA kode. Men jeg for en fejl i

ActiveSheet.Range("E8").Value = Application.XLookup(Range("h6"), ThisWorkbook.Sheets(1).Range("E:E"), ThisWorkbook.Sheets(1).Range("B:B"))
Jeg har ændret Application.XLookup(Range("M11"), til Application.XLookup(Range("h6"),
Men det skulle vel ikke gøre noget :-)

KW
Avatar billede kim1a Ekspert
28. august 2020 - 20:58 #15
Jo du kan ikke lave om på dele af det, og ikke resten. For H6 er kasserne nummer, så skal den jo ikke slå op i B kolonnen, men i A kolonnen?

Virker formlen hvis du taster den  ind manuelt?
Avatar billede Klaus W Guru
28. august 2020 - 22:13 #16
UPS ja h6 skal slå op i kolonne A og finde skibs nr. i kolonne B og overføre det til celle E8

Ja det gør den.
Avatar billede kim1a Ekspert
28. august 2020 - 23:57 #17
Prøv at bruge F8 i editoren, så du tager det skridt for skridt. Jeg tænker det er noget med hvilket ark der er aktivt når den skal skrive formlen.
Avatar billede Klaus W Guru
29. august 2020 - 08:45 #18
Takker
Avatar billede Klaus W Guru
29. august 2020 - 09:07 #19
Hej Kim1a
Nu har jeg justret og  F8 i editoren det gør aat Excel springer rigtig mange linjer over, og men jeg kan ikke se hvorfor den ikke udføre opgaven. Hvis du vil hjælpe mig med at forstå fejlen i denne linje ville det være dejligt.

ActiveSheet.Range("E8").Value = Application.XLookup(Range("H6"), ThisWorkbook.Sheets(1).Range("A:A"), ThisWorkbook.Sheets(1).Range("B:B"))

Jeg kan se at den skal indsætte værdigen i E8 og at den skal søge efter værdigen i H6. Jeg kan også se at den skal kikke i kolonne A efter værdigen fra H6. Og finde værdigen i kolonne B.

Er det nogenlunde rigtig set.
KW
Avatar billede kim1a Ekspert
30. august 2020 - 00:05 #20
Ja det er 100 % korrekt. Find værdi fra H6 i kolonne A i faneblad VPL 2021 og returner kolonne B fra samme faneblad.

Jeg tror stadig det er henvisningen til faneblad der går galt. Hvis ikke du er velkendt med F8 måden at springe i en programmering, så prøv i stedet at lave et break lige inden den skal til den linje du gengiver. Så kan du i immidiate vinduet skrive:
? thisworkbook.sheets(1).name for at se hvad den opfatter.
Avatar billede Klaus W Guru
30. august 2020 - 11:22 #21
Hej igen
Tak det hjælpe virkelig med forståelsen, jeg for det til at køre det eneste der nu sker er at jeg for en fejl #VÆRDI i E8 faneblad 6101.
Avatar billede kim1a Ekspert
30. august 2020 - 17:38 #22
E8?
Avatar billede Klaus W Guru
31. august 2020 - 07:27 #23
Godmorgen Kim1a
Ja når jeg overføre ark til mit opsamling ark sådan som du har hjulpet mig med køre alt men hvor den så skal skrive det skibs nummer den henter fra kolonne B i E8 på faneblad 6101, kommer der denne fejl fejl #VÆRDI.

KW
Avatar billede kim1a Ekspert
31. august 2020 - 16:35 #24
Sorry det var mig, synes det var en anden celle vi talte om før.

Hvad sker der hvis du taster formlen manuelt i E8? Virker den så?

Jeg du prøvet dette:
prøv i stedet at lave et break lige inden den skal til den linje du gengiver. Så kan du i immidiate vinduet skrive:
? thisworkbook.sheets(1).name for at se hvad den opfatter.

For hvis formlen virker manuelt så er det vbaen der indsætter forkert.
Avatar billede Klaus W Guru
31. august 2020 - 20:27 #25
Godaften Kin1a

Formlen fungere når jeg indtaster den manuelt i E8.

Jeg prøver lige videre.

KW
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