Åter Punkt Koder Istället för Objektnamn

January 8

Alan kan använda dataverifiering för att skapa en listruta av giltiga val för en cell. Men vad han egentligen behöver är mer komplex. Han har ett stort antal objekt namn med tillhörande artikelkoder. I cell B2 kan han skapa en lista datavalidering som visar alla objekt namn (agitator, motor, pump, tank, etc.). Användaren kan sedan välja en av dessa. När han refererar cell B2 på andra håll, men vill han posten code-inte objektet namnreturneras av referens. Således skulle hänvisningen återvända A, M, P, TK, etc. istället för agitator, motor, pump, tank, etc.

Det finns inget direkt sätt att göra detta i Excel. Anledningen är att datavalidering listor sätts upp för att inkludera en enda endimensionell lista med objekt. Detta gör det enkelt för listan för att innehålla dina objekt namn. Däremot kan du utöka hur du använder listan valideringsuppgifter lite för att få det du vill ha. Gör så här:

  1. Någonstans till höger om dina kalkylbladsdata, skapa en datatabell. Denna tabell innehåller dina objekt namn och, till höger om varje objekt namn, posten koden i samband med det namnet.
  2. Markera de celler som innehåller dina objekt namn. (Välj inte posten koder, bara namnen.)
  3. Visa fliken Formler i bandet.
  4. Klicka på Definiera Namn verktyg i gruppen Definierade namn. Excel visas det nya namnet i dialogrutan. (Se figur 1.)

    Åter Punkt Koder Istället för Objektnamn

    Figur 1. Nytt namn i dialogrutan.

  5. I rutan Namn anger du ett beskrivande namn, såsom ItemNames.
  6. Klicka OK för att lägga till namn och stänga dialogrutan.
  7. Markera cell B2 (den cell där du vill att din valideringslistan).
  8. Visa fliken Data i bandet.
  9. Klicka på Data Validation verktyget på verktygsgruppen Data. Excel visar Data Validation dialogrutan. (Se figur 2.)

    Åter Punkt Koder Istället för Objektnamn

    Figur 2. Data Validering dialogrutan.

  10. Använda listan Tillåt rullgardins väljer List.
  11. I rutan Källa anger ett likhetstecken följt av det namn du definierat i steg 5 (t.ex. = ItemNames).
  12. Klicka på OK.

Med dessa steg görs, kan man fortfarande använda listdatavalidering för att välja giltiga objektnamn. Vad du nu behöver göra är att referera till objektet koden från datatabellen du ställer in i steg 1. Du kan göra det med en formel som denna:

= LETARAD (B2, offset (ItemNames, 0,0, 2), 2, FALSKT)

Denna formel kan användas på egen hand (för att sätta önskat objekt koden i en cell) eller det kan användas inom en större formel, var som helst du skulle ha ursprungligen refererade B2.

Om du av någon anledning, kan du inte skapa en datatabell för ditt objekt namn och koder, kan du närmar problemet genom att skapa en matrisformel:

= INDEX ({"A", "M", "P", "TK"}, PASSA (B2, {"agitator", "motor", "pump", "tank"}, 0))

Som med alla matrisformler, anger du här genom att trycka Ctrl + Shift + Enter. Den största nackdelen med det är att det snabbt kan bli tungrott att hålla formeln uppdateras och det finns en "livskraft gräns" på hur många par av koder och objekt som du kan inkludera i formeln. (Gränsvärdet definieras av formeln längd, så det beror på längden på dina objekt namn.) Dessutom är denna metod bra att bara gå objektet koden i en annan cell, snarare än inklusive det som en del av en större formel.

ExcelTips är din källa för kostnadseffektiv Microsoft Excel utbildning. Detta tips (12078) gäller Microsoft Excel 2007 och 2010. Du kan hitta en version av detta tips för den äldre menygränssnittet i Excel här: Returnera Punkt Koder Istället för Objektnamn.