Excel'de verileri nasıl grep edebilirim?


11

İki sütun gibi veri içeren bir Excel dosyası var:

Operator ID           MXS1268
Name                  ramesh    

Operatör kimliği ve görüntüleme veya bazı günlük dosyasına koymak aynı değere sahip birden çok Excel dosyalarında yinelenen olup olmadığını denetlemeniz gerekir.


Ne yapmak istediğinize bağlı olarak, bunları Excel'de yapmanın farklı yolları vardır. Arama yapmak istiyorsanız, Bul diyalog penceresini getirerek Ctrl + F ile yapabilirsiniz. Birden fazla ölçüt varsa, filtreler size yardımcı olabilir. Kopyaları kaldırmak için çeşitli yollar vardır. İhtiyacınız olan şeyde biraz daha açık olmalısınız. Büyük olasılıkla bu sitede arama yaparsanız, gereksinimleriniz yeterince basit göründüğü için ihtiyacınız olanı bulacaksınız.
Amer

1
Tüm Excel dosyaları aynı iki sütun biçiminde mi? Dosyalar .xlsx.csv? Dosyaların birden fazla sayfası var mı? Sorunuza daha fazla bilgi eklemek cevap almanıza yardımcı olacaktır.
2013'te Excellll

metne ve grep'e dönüştür.
Ярослав Рахматуллин

Yanıtlar:


5

Hala iyi cevaplar yok mu? Grep dediğinden beri, nasıl bir kabuk kullanılacağını bildiğini varsayıyorum;

$ 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

Ve rapor:

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

İle girdi dosyasının bir kopyasını alabilirsiniz wget http://sprunge.us/MbhE -q -O- | base64.exe -d > ram.xls.
Ярослав Рахматуллин

Çözümünüzü denemek istiyorum ama bağlantınız "Yasak"
Ken Ingram

sadece dosyayı çalıştırmadan önce bakın, aptal olma.
Ярослав Рахматуллин

Dinleyin. Kişisel olma. Bu bağlantıda bir 403 hatası alıyorum. "2019-02-08 09:38:13 HATA 403: Yasak."
Ken Ingram

1
tamam. başka bir şey ifade ettiğini düşündüm. sadece google paketi xls2txt
Ярослав Рахматуллин

2

Linux veya Cygwin'de:

$ xlsx2csv myfile.xlsx | grep MXS1268 

Lanet olsun. Gerçek olamayacak kadar iyiydi. Yükledim, ancak bir hata geri döndüm: ===> "ValueError: int () için geçersiz değişmez 10: '1023 1025'"
Ken Ingram

Hem python2 hem de python3 ile deneyin
golimar

Eh. Ne demek istiyorsun? Her ikisini de deneyin?
Ken Ingram

10 xlsx dosyalarının bir listesi var ve bir parça veri için grep istiyorum.
Ken Ingram

1

Temel Python'u biliyorsanız, openpyxl - veya herhangi bir sayıda Python paketi - kullanmayı deneyebilirsiniz. Eğer grep'i kullanmaya hazırsanız, excel'i metne aktarın ve grep'e ekleyin. Veya hepsini yapmak için sadece bir pygrep betiği yazın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.