Avatar billede ups34 Nybegynder
13. april 2011 - 17:17 Der er 6 kommentarer og
1 løsning

Vlookup fungere ikke i VBA

Hej alle

Det her er frustrerende!!!

Jeg har følgende kode der virker uden problemer:

I userform activate:
With lstkarme
On Error Resume Next
If lstdørtype.Text = "" Then
lstkarme.Text = ""
Else
lstkarme.Text = Evaluate("VLookup(""" & Me.lstdørtype.Text & """,Manuel hængslet!A14:BO88,7,False)")
End If
End With

Denne formel virker derimod ikke:
I userform activate:
With lstpaskvil
On Error Resume Next
If lstretning.Text = "Højre ind" Then
lstpaskvil.Text = Evaluate("VLookup(""" & Me.lstdørtype.Text & """,Manuel hængslet!A14:CM88,88,False)")
Else
lstpaskvil.Text = Evaluate("VLookup(""" & Me.lstdørtype.Text & """,Manuel hængslet!A14:CM88,13,False)")
End If
End With

Begge koder er sat ind i change de respektive steder. Jeg har en formel der virker ved at læse "Med modkarm", så det er ikke det at der er tekst eller mellemrum i teksten.

Jeg har kigget i timer (og forsøgt snart alt) er der nogen der kan se min fejl? (Der kommer ingen fejl meddellelse når jeg skifter i "retning"

MVH
UPS
13. april 2011 - 17:23 #1
Jeg ville starte med at fjerne linjen "On error resume next" så du faktisk får de eventuelle fejl der måtte være vist.
Avatar billede ups34 Nybegynder
13. april 2011 - 17:30 #2
Hej Thor

Når jeg gør det er det linien:
lstpaskvil.Text = Evaluate("VLookup(""" & Me.lstdørtype.Text & """,Manuel hængslet!A14:CM88,13,False)")

Jeg prøvede at ændre den til : lstpaskvil.Text = "". Det betød bare at den så viste fejl på ovenstående linie.
Selve Vlookup formlen er kopieret fra et sted hvor den virker uden problemer, jeg har kun ændret i antal kolonner samt hvilken kolonne den skal kigge i

PFT
ups
13. april 2011 - 18:05 #3
Bliver du ikke klogere af den fejlmelding du får?
Når vi nu er i gang med oprydningen ville jeg også overveje at fjerne linjerne "With lstpaskvil" og End with - de ser ikke ud til at blive brugt.
Og så ville jeg kigge efter om jeg faktisk har en kontrol, der hedder

lstpaskvil
Avatar billede ups34 Nybegynder
13. april 2011 - 18:28 #4
Ja det lyder mærkeligt, men nej det er hele linien der er markeret gul.

I alle de andre formler (der virker!), og der er mange, har jeg with og end with med. Jeg syntes ikke det lyder logisk

Og ja der er en liste det hedder lstpaskvil ;-)
13. april 2011 - 18:35 #5
Der kommer normalt en fejlmelding, hvor du kan vælge debug og dernæst bliver linjen gul. Det er teksten i den fejlmelding du måske kan blive klogere af.
Prøv at sætte en label/textbox på din userform i stedet og aflever resultatet af formlen der i stedet.
Tænker at problemet kan være at resultatet af evalueringen ikke findes i listen.
15. april 2011 - 17:31 #6
Kom du videre herfra?
Avatar billede ups34 Nybegynder
18. april 2011 - 18:24 #7
Hej Thor

Nej jeg blev nød til at lave et nyt ark hvor der ikke var mellemrum i navnet. Det besynderlige er, at jeg har flere andre formler der fint virker med mellem i ark navnet, jeg forstår det ikke?
Måske du kan hjælpe med det næste ;-)    Det er samme formel, den virker fint (med det nye ark) med :
If lstretning.Text = "Højre ind" Then
lstpaskvil.Text = Evaluate("VLookup(""" & Me.lstdørtype.Text & """,lpas!A2:C73,3,False)")
Else
lstpaskvil.Text = Evaluate("VLookup(""" & Me.lstdørtype.Text & """,lpas!A2:C73,2,False)")

Men skriver jeg If lstretning.Text = "Højre ind" Or "Venstre ind" Then
Så virker den ikke, jeg ændre ikke i andet

PFT
Ups
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
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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