Hogyan lehet értékeket keresni / megtalálni egy másik munkafüzetben?
Ez a cikk arról szól, hogyan lehet értékeket megkeresni és adatokat visszaadni egy másik munkafüzetből, és hogyan lehet értékeket keresni / keresni egy másik munkafüzetből. Itt három megoldást mutatok be részletesen.
- Vlookup adatok és az Excel másik munkafüzetéből származó értékek visszatérése
- Vlookup adatok és visszatérési értékek egy másik zárt munkafüzetből a VBA segítségével
Vlookup adatok és az Excel másik munkafüzetéből származó értékek visszatérése
Például egy gyümölcsvásárlási táblázatot hoz létre az Excel programban, és most meg kell keresnie a gyümölcsöket egy másik munkafüzetből, és vissza kell adnia a megfelelő árakat, az alábbi képernyőképek alatt. Itt segítek megoldani az Excel VLOOKKUP funkciójával.
1. Nyissa meg mindkét munkafüzetet, amelyekből vlookup értékeket ad meg, és amelyekben visszaadja az értékeket.
2. Válasszon egy üres cellát, amellyel visszaadja az árat, írja be a képletet = VLOOKUP (B2, [Ár.xlsx] 1. lap! $ A $ 1: $ B $ 24,2, HAMIS) bele, majd húzza a Fill Handle-t, amellyel ezt a képletet alkalmazza a tartományra, amire szüksége van.
Megjegyzések:
(1) A fenti képletben a B2 az a gyümölcs, amelyet egy másik munkafüzetből kereshet meg, az Price.xlsx a munkafüzet fájlnevét jelöli, a Sheet1 azt a lapnevet jelenti, amelyről keresni fog, és A $ 1 : $ B $ 24 az a tartomány, amelyből felnézhet. Szükség szerint megváltoztathatja őket.
(2) A keresett munkafüzet bezárása után a képlet automatikusan frissül a következőre: = VLOOKUP (B2, 'W: \ test \ [Ár.xlsx] Lap1'! $ A $ 1: $ B $ 24,2, HAMIS), a W: \ test \ a munkafüzet mentési útvonala, amelyről utánanézett.
Eddig minden ár helyesen tért vissza, ahogy a bal oldali képernyőkép látható. Ezek az árak automatikusan frissülnek, ha az eredeti munkafüzet megváltozik.
A képlet túl bonyolult ahhoz, hogy emlékezzen rá? Mentse el a képletet automatikus szöveges bejegyzésként, és a jövőben csak egy kattintással használhatja újra! Olvass tovább… Ingyenes próbaverzió |
Vlookup adatok és visszatérési értékek egy másik zárt munkafüzetből a VBA segítségével
Lehet, hogy egy alom összetévesztve konfigurálja a mentési útvonalat, a fájlnevet és a munkalapot a VLOOKUP függvényben. Ez a módszer bevezet egy VBA-t, hogy könnyen megoldható legyen.
1. megnyomni a más + F11 gombokkal nyissa meg a Microsoft Visual Basic for Applications ablakot.
2. Kattintson a betétlap > Modulok, majd illessze be a VBA kód alá a nyitó modul ablakába.
VBA: Vlookup adatok és visszatérési értékek egy másik zárt munkafüzetből
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
Megjegyzések: Ez a VBA egy oszlopban adja vissza az értékeket, amely 2 oszlop mögött van a kiválasztott oszlop mögött. Például a VBA alkalmazásakor a B oszlopot választom, az értékek a D oszlopban térnek vissza. Ha módosítania kell a cél oszlopot, kérjük, olvassa el a kódot xRg.Offset (0, 2). Formula = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row , és cserélje ki 2 szükség szerint más számra.
3. megnyomni a F5 vagy kattintson a gombra futás gombra a VBA futtatásához.
4. A nyitó párbeszédpanelen adja meg a keresett adattartományt, majd kattintson a gombra OK gombot.
5. Most válassza ki a munkafüzetet, ahol az értékeket keresse meg a Munkafüzet kiválasztása párbeszédpanelen, majd kattintson a gombra Nyisd ki gombot.
Most az összes kiválasztott értéket megkeresi a megadott zárt munkafüzetben, és a megfelelő értékeket a megadott oszlop adja vissza. Lásd a képernyőképet:
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!