Прескочи на основното съдържание

Как да потърся/намеря стойности в друга работна книга?

Автор: Кели Последна промяна: 2020-05-09

Тази статия говори за това как да търсите стойности и да връщате данни от друга работна книга и как да намирате/търсите стойности от друга работна книга. Тук ще представя три решения в детайли.


Vlookup данни и връщане на стойности от друга работна книга в Excel

Например вие създавате таблица за покупка на плодове в Excel и сега трябва да потърсите плодовете от друга работна книга и да върнете съответните цени, както са показани екранните снимки по-долу. Тук ще ви насоча да го решите с функцията VLOOKKUP в Excel.

1. Отворете и двете работни книги, от които ще търсите vlooking стойности и ще връщате стойности.

2. Изберете празна клетка, която ще върне цената, въведете формулата =VLOOKUP(B2,[Price.xlsx]Sheet1!$A$1:$B$24,2,FALSE) в него и след това плъзнете неговия манипулатор за попълване за прилагане на тази формула към диапазона, както ви е необходимо.

бележки:
(1) В горната формула B2 е плодът, който ще търсите от друга работна книга, Price.xlsx показва името на файла на работната книга, от която ще търсите, Sheet1 означава името на листа, от който ще търсите, и A$1 :$B$24 е диапазонът, от който ще търсите нагоре. Можете да ги промените според нуждите си.
(2) След затваряне на работната книга, от която сте погледнали нагоре, формулата ще се актуализира автоматично =VLOOKUP(B2,'W:\test\[Price.xlsx]Sheet1'!$A$1:$B$24,2,FALSE), W:\test\ е пътя за запазване на работната книга, от който сте потърсили.

Досега всички цени са върнати правилно, както е показано на лявата екранна снимка. И тези цени ще се актуализират автоматично, ако оригиналната работна книга, която сте търсили, се промени.

лента за бележки Формулата е твърде сложна за запомняне? Запазете формулата като запис на автоматичен текст за повторно използване само с едно кликване в бъдеще!
Чети повече…     Безплатен пробен период

Vlookup данни и връщане на стойности от друга затворена работна книга с VBA

Може да е малко объркано да конфигурирате пътя за запис, името на файла и работния лист във функцията VLOOKUP. Този метод ще въведе VBA за лесно решаване.

1. Натисни Друг + F11 клавиши, за да отворите прозореца на Microsoft Visual Basic за приложения.

2. Щракнете върху Поставете > Модулии след това поставете под VBA кода в прозореца на отварящия модул.

VBA: Vlookup данни и връщане на стойности от друга затворена работна книга

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
Забележка: Този VBA ще върне стойности в колона, която е 2 колони зад избраната колона. Например избирам колона B, когато прилагам този VBA, стойностите ще се върнат в колона D. Ако трябва да промените целевата колона, моля, разберете кода xRg.Offset(0, 2).Формула = xString & GetColumn(xFCell.Column + 1) & "$" & xFCell.Row , и заменете 2 към друг номер, колкото ви трябва.

3. Натисни F5 клавиша или щракнете върху бягане бутон за стартиране на този VBA.

4. В диалоговия прозорец за отваряне, моля, посочете диапазона от данни, който ще търсите, и щракнете върху OK бутон.

5. Сега, моля, изберете работната книга, където ще търсите стойности в отварящия се диалогов прозорец Избор на работна книга и щракнете върху отворено бутон.

Сега всички избрани стойности се търсят в указаната затворена работна книга и съответните стойности се връщат в определена колона. Вижте екранна снимка:

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
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