วิธีค้นหา / ค้นหาค่าในสมุดงานอื่น
บทความนี้พูดถึงวิธีค้นหาค่าและส่งคืนข้อมูลจากสมุดงานอื่นและวิธีค้นหา / ค้นหาค่าจากสมุดงานอื่น ที่นี่ฉันจะแนะนำสามวิธีโดยละเอียด
- ข้อมูล Vlookup และส่งคืนค่าจากสมุดงานอื่นใน Excel
- ข้อมูล Vlookup และส่งคืนค่าจากสมุดงานอื่นที่ปิดด้วย VBA
ข้อมูล Vlookup และส่งคืนค่าจากสมุดงานอื่นใน Excel
ตัวอย่างเช่นคุณกำลังสร้างตารางการซื้อผลไม้ใน Excel และตอนนี้คุณต้อง vlookup ผลไม้จากสมุดงานอื่นและส่งคืนราคาที่เกี่ยวข้องตามภาพหน้าจอด้านล่างที่แสดง ที่นี่ฉันจะแนะนำคุณแก้ปัญหาด้วยฟังก์ชัน VLOOKKUP ใน Excel
1. เปิดสมุดงานทั้งสองที่คุณจะใช้ค่า vlookup และส่งคืนค่าใน
2. เลือกเซลล์ว่างที่คุณจะส่งคืนราคาพิมพ์สูตร = VLOOKUP (B2, [Price.xlsx] Sheet1! $ A $ 1: $ B $ 24,2, FALSE) จากนั้นลาก Fill Handle เพื่อใช้สูตรนี้กับช่วงตามที่คุณต้องการ

หมายเหตุ : :
(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 \ คือเส้นทางการบันทึกของสมุดงานที่คุณได้ค้นหา
จนถึงตอนนี้ราคาทั้งหมดกลับถูกต้องตามภาพหน้าจอด้านซ้ายที่แสดง และราคาเหล่านี้จะอัปเดตโดยอัตโนมัติหากสมุดงานต้นฉบับที่คุณค้นหาจากการเปลี่ยนแปลง
![]() | สูตรซับซ้อนเกินไปที่จะจำ? บันทึกสูตรเป็นรายการข้อความอัตโนมัติเพื่อใช้ซ้ำได้ในคลิกเดียวในอนาคต! อ่านเพิ่มเติม ... ทดลองใช้ฟรี |

ปลดล็อก Excel Magic ด้วย Kutools AI
- การดำเนินการอย่างชาญฉลาด: ดำเนินการกับเซลล์ วิเคราะห์ข้อมูล และสร้างแผนภูมิ ทั้งหมดนี้ขับเคลื่อนด้วยคำสั่งง่ายๆ
- สูตรที่กำหนดเอง: สร้างสูตรที่ปรับแต่งโดยเฉพาะเพื่อปรับปรุงขั้นตอนการทำงานของคุณ
- การเข้ารหัส VBA: เขียนและใช้งานโค้ด VBA ได้อย่างง่ายดาย
- การตีความสูตร: เข้าใจสูตรที่ซับซ้อนได้อย่างง่ายดาย
- การแปลข้อความ: ทลายกำแพงด้านภาษาภายในสเปรดชีตของคุณ
ข้อมูล Vlookup และส่งคืนค่าจากสมุดงานอื่นที่ปิดด้วย VBA
อาจเป็นเรื่องที่สับสนในการกำหนดค่าเส้นทางการบันทึกชื่อไฟล์และแผ่นงานในฟังก์ชัน VLOOKUP วิธีนี้จะแนะนำ VBA เพื่อแก้ปัญหาได้อย่างง่ายดาย
1 กด อื่น ๆ + F11 ปุ่มเพื่อเปิดหน้าต่าง Microsoft Visual Basic for Applications
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) .Formula = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row และแทนที่ 2 ไปยังหมายเลขอื่น ๆ ตามที่คุณต้องการ 3 กด F5 หรือคลิกปุ่ม วิ่ง เพื่อเรียกใช้ VBA นี้
4. ในกล่องโต้ตอบเปิดโปรดระบุช่วงข้อมูลที่คุณจะค้นหาและคลิกไฟล์ OK ปุ่ม
5. ตอนนี้โปรดเลือกสมุดงานที่คุณจะค้นหาค่าในการเปิดกล่องโต้ตอบเลือกสมุดงานและคลิกที่ จุดเปิด ปุ่ม
ตอนนี้ค่าที่เลือกทั้งหมดจะถูกค้นหาในสมุดงานปิดที่ระบุและค่าที่เกี่ยวข้องจะถูกส่งกลับในคอลัมน์ที่ระบุ ดูภาพหน้าจอ:
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!