Przejdź do głównej zawartości

Jak wyszukiwać / znajdować wartości w innym skoroszycie?

W tym artykule omówiono sposób wyszukiwania wartości i zwracania danych z innego skoroszytu oraz znajdowania / wyszukiwania wartości z innego skoroszytu. Tutaj szczegółowo przedstawię trzy rozwiązania.


Przeglądaj dane i zwracaj wartości z innego skoroszytu w programie Excel

Na przykład tworzysz tabelę zakupów owoców w programie Excel, a teraz musisz przejrzeć owoce z innego skoroszytu i zwrócić odpowiednie ceny, jak pokazano poniżej. Tutaj poprowadzę Cię przez rozwiązanie tego problemu za pomocą funkcji WYSZUKAJ.PIONOWO w programie Excel.

1. Otwórz oba skoroszyty, z których będziesz przeglądać wartości i zwracaj wartości.

2. Wybierz pustą komórkę, którą zwrócisz cenę, wpisz formułę = WYSZUKAJ.PIONOWO (B2; [Price.xlsx] Arkusz1! $ A 1: $ B 24,2; FAŁSZ) do niego, a następnie przeciągnij jego uchwyt wypełnienia, aby zastosować tę formułę do zakresu zgodnie z potrzebami.

Uwagi:
(1) W powyższym wzorze B2 jest owocem, na który spojrzysz z innego skoroszytu, Price.xlsx wskazuje nazwę pliku skoroszytu, z którego będziesz patrzeć, Arkusz1 oznacza nazwę arkusza, z którego będziesz patrzeć, a 1 $ : B $ 24 $ to zakres, z którego będziesz patrzeć w górę. Możesz je zmieniać według potrzeb.
(2) Po zamknięciu skoroszytu, z którego wyszedłeś, formuła zostanie automatycznie zaktualizowana do = WYSZUKAJ.PIONOWO (B2; 'W: \ test \ [Price.xlsx] Sheet1'! $ A $ 1: $ B $ 24,2; FALSE), W: \ test \ jest ścieżką zapisu skoroszytu, z którego wyszukałeś.

Jak dotąd wszystkie ceny wróciły poprawnie, jak pokazano na lewym zrzucie ekranu. Ceny te zostaną zaktualizowane automatycznie, jeśli oryginalny skoroszyt wyszukałeś po zmianach.

uwaga wstążka Formuła jest zbyt skomplikowana, by ją zapamiętać? Zapisz formułę jako wpis Auto Text do ponownego użycia za pomocą jednego kliknięcia w przyszłości!
Czytaj więcej ...     Przetestuj za darmo

Przeglądaj dane i zwracaj wartości z innego zamkniętego skoroszytu z VBA

Konfigurowanie ścieżki zapisu, nazwy pliku i arkusza roboczego w funkcji WYSZUKAJ.PIONOWO może być mylące. Ta metoda wprowadzi VBA, aby łatwo go rozwiązać.

1. wciśnij inny + F11 klawisze, aby otworzyć okno Microsoft Visual Basic for Applications.

2. Kliknij wstawka > Moduł, a następnie wklej poniższy kod VBA do okna modułu otwierającego.

VBA: Vlookup dane i zwracane wartości z innego zamkniętego skoroszytu

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
Note: Ten VBA zwróci wartości w kolumnie znajdującej się 2 kolumny za wybraną kolumną. Na przykład wybieram kolumnę B podczas stosowania tego VBA, wartości zwrócą się w kolumnie D. Jeśli chcesz zmienić kolumnę docelową, znajdź kod xRg.Offset (0, 2) .Formula = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row i wymień 2 na inny numer, jak potrzebujesz.

3. wciśnij F5 lub kliknij run przycisk, aby uruchomić ten VBA.

4. W otwartym oknie dialogowym określ zakres danych, które chcesz przeszukać, i kliknij OK przycisk.

5. Teraz wybierz skoroszyt, w którym będziesz szukać wartości w otwierającym się oknie dialogowym Wybierz skoroszyt, i kliknij Otwarte przycisk.

Teraz wszystkie wybrane wartości są wyszukiwane w określonym zamkniętym skoroszycie, a odpowiadające im wartości są zwracane w określonej kolumnie. Zobacz zrzut ekranu:

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
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?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations