VLOOKUP misslyckas nästan alltid av någon av ett fåtal anledningar: en ungefärlig matchning, en text-mot-tal-avvikelse, dolda blanksteg, ett olåst intervall, fel kolumnnummer eller att sökvärdet inte finns i den första kolumnen. Gå igenom den här checklistan – eller klistra in den trasiga formeln i ExcelGPT och fråga "varför fungerar inte detta?" för att få lösningen direkt.
Gör det med AITvinga en exakt matchning
De flesta #N/A-fel beror på att det sista argumentet saknas. Avsluta formeln med , FALSE) (or 0) så att VLOOKUP slutar göra ungefärliga matchningar.
Åtgärda matchningsfel mellan text och tal
Om nyckeln är ett tal på ena sidan men text på den andra kommer VLOOKUP inte att matcha. Konvertera med VALUE() / TEXT(), eller använd Data ▸ Text till kolumner för att rensa kolumnen.
Ta bort dolda blanksteg
Inledande/avslutande blanksteg förstör matchningar. Omslut sökvärdet med TRIM: =VLOOKUP(TRIM(A2), …).
Lås tabellintervallet
När du fyller nedåt i formeln förskjuts ett olåst intervall. Tryck på F4 för att göra det absolut: $A$2:$D$100.
Kontrollera kolumnnumret
col_index_num räknas från tabellens första kolumn, inte bladets. Ett tal som är större än tabellens bredd returnerar #REF!.
Se till att nyckeln finns i den första kolumnen
VLOOKUP söker endast i intervallets första kolumn och letar åt höger. Om din nyckel är till höger om svaret, byt till =XLOOKUP(A2, B:B, C:C) eller INDEX/MATCH.
=IFNA(VLOOKUP(TRIM(A2), $A$2:$D$100, 4, FALSE), "Not found")Nästan alltid en dold avvikelse: extra blanksteg, ett tal sparat som text eller en ungefärlig matchning. Prova =VLOOKUP(TRIM(A2), range, n, FALSE) och se till att båda sidor har samma datatyp.
Antingen är det sista argumentet TRUE/utelämnat (ungefärlig matchning) eller så är tabellintervallet inte låst och försköts när du fyllde nedåt. Lägg till FALSE och tryck på F4 för att låsa intervallet.
Intervallet är inte absolut – när du fyller nedåt flyttas det under dina data. Lås det med $ (F4) så att varje rad söker i hela tabellen.