ย้ายข้อมูลไปยังเซลล์ที่ระบุ


0

ฉันมี 3 คอลัมน์ A, B และ C

A = รายการชื่อ B = เซลล์เฉพาะสำหรับแต่ละชื่อ c = คอลัมน์ว่างฉันต้องการวางชื่อ

ฉันลาดเทดูเหมือนจะคิดออกและรายชื่อใน 1 แผ่นมีขนาดเล็กกว่ารายชื่อในครั้งที่สอง

แก้ไข: ชื่อใน A ไม่เรียงตามลำดับคอลัมน์ B แสดงรายการแถวที่จะวางชื่อในคอลัมน์ C


คุณหมายถึงอะไรโดย "เซลล์เฉพาะสำหรับแต่ละชื่อ"
chuff

ชื่อใน A ไม่เรียงตามลำดับคอลัมน์ B แสดงรายการแถวที่จะวางชื่อในคอลัมน์ C
ross

คำตอบ:


1

หากฉันเข้าใจคำถามของคุณคุณจะมีรายชื่อในคอลัมน์ A และรายการของตัวเลขในคอลัมน์ B ที่ระบุในแถวใดในคอลัมน์ C แต่ละชื่อในคอลัมน์ A ควรจะแสดง คุณต้องมีสูตรที่จะแสดงชื่อในคอลัมน์ A ตามลำดับที่กำหนดโดยคอลัมน์ B

ตัวอย่างเช่นหากคำว่า 'Alpha' อยู่ในเซลล์ A1 และหมายเลข 3 อยู่ในเซลล์ B1 ดังนั้น Alpha ควรแสดงในเซลล์ C3

สูตรต่อไปนี้จะสร้างผลลัพธ์นั้น

=INDEX(A:A,MATCH(ROW(C1),B:B,0),1)

สูตรนี้ใช้งานได้สองขั้นตอน:

  • MATCHฟังก์ชั่นระบุแถวในคอลัมน์ B ที่ตรงกับหมายเลขแถวของแต่ละเซลล์ในคอลัมน์ C ในตัวอย่างที่แสดงด้านล่างเซลล์ C1 มีจำนวนแถวของ 1; MATCH พบว่าค่าในแถวที่ 2 ของคอลัมน์ B

  • INDEXฟังก์ชั่นแล้วส่งกลับค่าในคอลัมน์ A สำหรับแถวที่MATCHพบ ดังนั้นในตัวอย่าง 'เบต้า' จะปรากฏในเซลล์ C1, 'Kappa' ใน C2 และ 'Alpha' ใน C3

ตัวอย่างแผ่นงานที่แสดงวิธีแก้ปัญหา

เพียงวางสูตรในเซลล์ C1 (หรือแถวในคอลัมน์ C ที่สอดคล้องกับจุดเริ่มต้นของรายการในคอลัมน์ A) และคัดลอกลงไปยังแถวสุดท้ายของชื่อ


0

หากฉันเข้าใจปัญหาของคุณคุณต้องการบางสิ่งดังนี้:

Data | Row | Output
-------------------
ValA |  3  |  ValC
ValB |  1  |  ValA
ValC |  2  |  ValB

เพื่อให้บรรลุผลนี้ให้ใช้ฟังก์ชัน INDEX ในคอลัมน์ที่สามซึ่งมีบางอย่างในบรรทัดเหล่านี้

=INDEX($A$1:$A$65536,B1)

อาร์กิวเมนต์แรกระบุช่วงที่คุณต้องการดู (ที่นี่ฉันได้ระบุส่วนหนึ่งของคอลัมน์ A) และเซลล์ที่สองอ้างถึงแถวเพื่อเลือกข้อมูล

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.