ฉันจะอัดข้อมูลใน Excel ได้อย่างไร


11

ฉันมีไฟล์ Excel ที่มีข้อมูลในสองคอลัมน์เช่น:

Operator ID           MXS1268
Name                  ramesh    

ฉันต้องตรวจสอบซ้ำในไฟล์ Excel หลายไฟล์ซึ่งมีค่าเท่ากันสำหรับ ID ผู้ดำเนินการและแสดงหรือวางไว้ในไฟล์บันทึกบางไฟล์


ขึ้นอยู่กับสิ่งที่คุณต้องการมีหลายวิธีในการทำใน Excel หากคุณต้องการค้นหาคุณสามารถทำได้ผ่าน Ctrl + F เพื่อเปิดกล่องโต้ตอบค้นหา หากมีหลายเกณฑ์ตัวกรองอาจช่วยคุณได้ สำหรับการลบรายการที่ซ้ำกันมีหลายวิธี คุณจะต้องชัดเจนมากขึ้นในสิ่งที่คุณต้องการ เป็นไปได้ว่าถ้าคุณค้นหาไซต์นี้คุณจะพบสิ่งที่คุณต้องการเนื่องจากความต้องการของคุณดูเหมือนจะง่ายพอ
Amer

1
ไฟล์ Excel ทั้งหมดอยู่ในรูปแบบสองคอลัมน์เดียวกันหรือไม่ มีไฟล์.xlsxหรือ.csv? ไฟล์มีแผ่นงานหลายแผ่นหรือไม่? การเพิ่มข้อมูลเพิ่มเติมลงในคำถามของคุณจะช่วยให้คุณได้รับคำตอบ
Excellll

แปลงเป็นข้อความและ grep
ЯрославРахматуллин

คำตอบ:


5

ยังไม่มีคำตอบที่ดีใช่ไหม เมื่อคุณพูด grep ฉันคิดว่าคุณรู้วิธีใช้เชลล์

$ link=http://wizard.ae.krakow.pl/~jb/xls2txt/xls2txt-0.13.tar.gz
$ wget -nv "$link" && \
  tar xf `basename "$link"` && \
  cd $(basename "$link" .tar.gz) &&\
   make
2013-07-24 URL:(...)/xls2txt-0.13.tar.gz [12419/12419] -> "xls2txt-0.13.tar.gz"
cc -O2 -g -DVERSION=0.13 -c xls2txt.c -o xls2txt.o
cc -O2 -g   -c -o ole.o ole.c
cc -O2 -g   -c -o cp.o cp.c
cc -O2 -g   -c -o ummap.o ummap.c
cc -O2 -g   -c -o ieee754.o ieee754.c
cc -lm  xls2txt.o ole.o cp.o ummap.o ieee754.o   -o xls2txt

$ awkf() { awk -F\\t '{ printf "%20s | %-20s\n", $1, $2 }' ; }
$ x2t() { ./xls2txt $1 C4:D5 | awkf > `basename "$1" .xls`.txt ; }
$ x2t ramesh2.xls ; x2t ramesh.xls

และรายงาน:

$ grep MXS1268 ramesh*txt
ramesh.txt:         Operator ID | MXS1268
ramesh2.txt:         Operator ID | MXS1268

wget http://sprunge.us/MbhE -q -O- | base64.exe -d > ram.xlsคุณจะได้รับสำเนาแฟ้มใส่ด้วย
ЯрославРахматуллин

ฉันต้องการลองใช้ทางออกของคุณ แต่ลิงก์ของคุณคือ "ต้องห้าม"
Ken Ingram

เพียงแค่ดูไฟล์ก่อนที่จะเรียกใช้ไม่ต้องงี่เง่า
ЯрославРахматуллин

ฟัง. อย่าได้รับส่วนบุคคล ฉันได้รับข้อผิดพลาด 403 จากลิงค์นั้น "2019-02-08 09:38:13 ข้อผิดพลาด 403: ต้องห้าม"
Ken Ingram

1
ตกลง. ฉันคิดว่าคุณหมายถึงอย่างอื่น เพียง google แพ็คเกจ xls2txt
ЯрославРахматуллин

2

บน Linux หรือ Cygwin:

$ xlsx2csv myfile.xlsx | grep MXS1268 

ประณาม. มันดีเกินกว่าจะเป็นจริงได้ ฉันได้ทำการติดตั้งแล้ว แต่ข้อผิดพลาดคือทั้งหมดที่ฉันได้รับกลับมา: ===> "ValueError: ตัวอักษรไม่ถูกต้องสำหรับ int () พร้อมฐาน 10: '1023 1,025'"
Ken Ingram

ลองใช้ทั้ง python2 และ python3
golimar

เอ๊ะ คุณหมายถึงอะไร ลองทั้งสองอย่าง
Ken Ingram

ฉันมีรายการไฟล์ 10 xlsx และฉันต้องการ grep สำหรับข้อมูลชิ้นเดียว
Ken Ingram

1

คุณอาจลองใช้ openpyxl - หรือแพ็กเกจ Python จำนวนเท่าใดก็ได้ถ้าคุณรู้จัก Python พื้นฐาน หากคุณไม่ได้ใช้ grep ให้ส่ง excel ไปยัง text แล้วใช้ grep หรือเพียงแค่เขียนสคริปต์ pygrep เพื่อทำมันทั้งหมด

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