역시 구글님이 만들어줬다.
내 담당은 아니지만 그냥 쉬워보여서 깨작 -_- 보통은 substitute(대상셀,char(10),"") 을 씁니다. (...)
그런데 이렇게 해도 되나? ㅜㅜ;
import win32com.client as win32
filename=input("""첫번째 시트에 있는 텍스트만 수정됩니다.
column A에서 비어 있는 셀이 있으면 자동으로 저장하고 끝내버려요. 조심.
바꿀 파일 이름을 넣어주세요.
예: C:\\니폴더\\니파일.xlsx
>>> """)
xl=win32.dynamic.Dispatch("Excel.Application")
wk=xl.Workbooks.Open(filename)
sh=wk.Sheets[0]
i=1
j=1
while True:
try:
sh.Cells(i,j).Value=sh.Cells(i,j).Value.replace("\n","")
except AttributeError:
i+=1
j=1
if sh.Cells(i,j).Value==None:
wk.Close(SaveChanges=True) #저장여부따위 물어보지 않아요...
else:
pass
continue
j+=1
구글님이 만들어줬다. 내가 안했어...
세로로 나열된, 스페인어가 들어있는 셀에서 한글이 포함되어 있는 셀을 알아내야 했다. =LENB()와 =LEN()의 값을 비교하는 방법이 가장 단순하지만 영어 이외의 언어가 끼어들면 안 통한다. -_-
Python 2.6이 유니코드를 쓰게 하느니 Pywin32의 Python 3.0용을 구하는 게 더 쉬웠다;; 걍 인터프리터에서 돌림. 미안...
import win32com.client as win32
import re
xLsx=win32.gencache.EnsureDispatch("Excel.Application")
getFile=xLsx.Workbooks.Open("귀찮아.xlsx")
getSheet=getFile.ActiveSheet
xLsx.Visible=True #보지 않고도 믿는 자는 행복하지만
i=1
while True:
if re.match('.*([ㄱ-ㆎ]|[가-힣])+.*',getSheet.Cells(i,찾을컬럼).Value)==None:
pass
else:
getSheet.Cells(i,적당한컬럼에).Value='어머나'
i+=1
match 씀... 아는 게 저거밖에 없어서...;;
가-힣 너무 좋아;;;... 좋았는데 ㅂㄹ님의 조언으로 ㄱ-ㆎ추가 -_-; cmd에서 charmap을 열면 참조할 수 있다. 자잘한 삽질들이라서 그냥 기록해둠. 앞으로도 간단한 건 그냥 3.0의 (짱 귀여운) IDLE에서 할 듯.
Pywin32 다운로드 링크 : [여기]
idle 켜고
>>> import glob
>>> a=glob.glob('pathname\*.*')
보다
토탈커맨더 켜고 커맨드 라인에 cd pa(thname) 친 다음 전체 선택 후 alt + m → y , win + r → notepad → ctrl + v 가 더 빠른 건 대체 왜일까...
이래서 전혀 안 늘고 있지만, 가끔 하나만 만들면 좋아서 폴짝폴짝 뛰고 보름달님에게 울부짖은 다음 포스팅하도록 하겠어요. 만장한 공돌이 여러분들 충고 좀 ^_<
업데이트 잘 안될 겁니다.
아직도 그냥 계산기. ㅡ_ㅡ