Note: The other languages of the website are Google-translated. Back to English
Logga in  \/ 
x
or
x
Registrera  \/ 
x

or

Hur letar jag upp / hittar värden i en annan arbetsbok?

Den här artikeln talar om hur man letar upp värden och returnerar data från en annan arbetsbok och hur man hittar / söker värden från en annan arbetsbok. Här kommer jag att presentera tre lösningar i detalj.


Vlookup-data och returnera värden från en annan arbetsbok i Excel

Till exempel skapar du en fruktköpstabell i Excel, och nu måste du söka efter frukterna från en annan arbetsbok och returnera motsvarande priser enligt nedanstående skärmdumpar. Här hjälper jag dig att lösa det med VLOOKKUP-funktionen i Excel.

1. Öppna båda arbetsböckerna som du ska ta upp värden från och returnera värdena i.

2. Välj en tom cell som du returnerar pris, skriv formeln = VLOOKUP (B2, [Price.xlsx] Sheet1! $ A $ 1: $ B $ 24,2, FALSE) in i den och dra sedan dess Fill Handle för att tillämpa denna formel i intervallet som du behöver.

Anmärkningar:
(1) I ovanstående formel är B2 frukten som du kommer att slå upp från en annan arbetsbok, Price.xlsx anger filnamnet på arbetsboken du kommer att slå upp från, Sheet1 betyder arknamnet som du kommer att titta upp från, och A $ 1 : $ B $ 24 är det intervall som du kommer att titta upp från. Du kan ändra dem efter behov.
(2) Efter att du har stängt arbetsboken som du tittat upp från uppdateras formeln automatiskt till = VLOOKUP (B2, 'W: \ test \ [Price.xlsx] Sheet1'! $ A $ 1: $ B $ 24,2, FALSE), W: \ test \ är den sparande sökvägen för arbetsboken som du har tittat upp från.

Hittills har alla priser returnerats korrekt som vänster skärmdump visas. Och dessa priser uppdateras automatiskt om den ursprungliga arbetsboken du tittade upp från ändringar.

anteckningsband Formel är för komplicerad för att komma ihåg? Spara formeln som en automatisk textpost för återanvändning med bara ett klick i framtiden!
Läs mer ...     fri rättegång

Vlookup-data och returnera värden från en annan sluten arbetsbok med VBA

Det kan vara en kull som är förvirrad att konfigurera sparningssökvägen, filnamnet och kalkylbladet i VLOOKUP-funktionen. Denna metod kommer att introducera en VBA för att lösa det enkelt.

1. tryck på andra + F11 för att öppna Microsoft Visual Basic for Applications-fönstret.

2. Klicka på Insert > Modulernaoch klistra sedan in under VBA-koden i öppningsmodulens fönster.

VBA: Vlookup-data och returvärden från en annan stängd arbetsbok

Private Function GetColumn(Num As Integer) As String
If Num <= 26 Then
GetColumn = Chr(Num + 64)
Else
GetColumn = Chr((Num - 1) \ 26 + 64) & Chr((Num - 1) Mod 26 + 65)
End If
End Function
Sub FindValue()
Dim xAddress As String
Dim xString As String
Dim xFileName As Variant
Dim xUserRange As Range
Dim xRg As Range
Dim xFCell As Range
Dim xSourceSh As Worksheet
Dim xSourceWb As Workbook
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xUserRange = Application.InputBox("Lookup values :", "Kutools for Excel", xAddress, Type:=8)
If Err <> 0 Then Exit Sub
Set xUserRange = Application.Intersect(xUserRange, Application.ActiveSheet.UsedRange)
xFileName = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 1, "Select a Workbook")
If xFileName = False Then Exit Sub
Application.ScreenUpdating = False
Set xSourceWb = Workbooks.Open(xFileName)
Set xSourceSh = xSourceWb.Worksheets.Item(1)
xString = "='" & xSourceWb.Path & Application.PathSeparator & _
"[" & xSourceWb.Name & "]" & xSourceSh.Name & "'!$"
For Each xRg In xUserRange
Set xFCell = xSourceSh.Cells.Find(xRg.Value, , xlValues, xlWhole, , , False)
If Not (xFCell Is Nothing) Then
xRg.Offset(0, 2).Formula = xString & GetColumn(xFCell.Column + 1) & "$" & xFCell.Row
End If
Next
xSourceWb.Close False
Application.ScreenUpdating = True
End Sub
Anmärkningar: Denna VBA returnerar värden i en kolumn som ligger två kolumner bakom vald kolumn. Till exempel väljer jag kolumn B när jag använder denna VBA, värdena kommer tillbaka i kolumn D. Om du behöver ändra målkolumnen, ta reda på koden xRg.Offset (0, 2). Formel = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row och byt ut 2 till ett annat nummer som du behöver.

3. tryck på F5 eller klicka på run för att köra denna VBA.

4. I öppningsdialogrutan, ange det dataintervall som du ska slå upp och klicka på OK knapp.

5. Välj nu arbetsboken där du kommer att leta upp värden i dialogrutan Välj en arbetsbok och klicka på Öppen knapp.

Nu slås alla valda värden upp i den angivna stängda arbetsboken och motsvarande värden returneras i angiven kolumn. Se skärmdump:


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2019 och 365. Stöder alla språk. Enkel distribution i ditt företag eller organisation. Fullständiga funktioner 30-dagars gratis provperiod. 60-dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50% och minskar hundratals musklick åt dig varje dag!
officetab botten
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    leigh_87 · 2 years ago
    Hi this works great thanks! Would it be at all possible to show me how i would change the code if i have the workbook open that i would like to lookup the data in?