0
嗨,並提前感謝你。Python:將變量傳遞給範圍()
在Visual Studio 2015年使用Python 3.4,閱讀從Excel 2007
/寫展望傳遞變量:
mylastrow ='$A$70006' # this address is not hard coded. it will be from an 'input'
加入上述範圍下面的表達式就是我的失敗:
myrange = xlwings.Range('Sheet1', 'A2:' & lastrow).value
我嘗試了這些:
myrange = xlwings.Range('Sheet1', 'A2:' & lastrow)
myrange = xlwings.Range('Sheet1', 'A2:' + lastrow).value
myrange = xlwings.Range('Sheet1', 'A2:' + lastrow)
myrange = xlwings.Range('Sheet1', 'A2:' & str(lastrow)).value
myrange = xlwings.Range('Sheet1', 'A2:' & int(lastrow)).value
myrange = xlwings.Range('Sheet1', 'A2:' + str(lastrow)).value
myrange = xlwings.Range('Sheet1', 'A2:' + int(lastrow)).value
myrange = xlwings.Range('Sheet1', 'A2', 'A' & lastrow).value
myrange = xlwings.Range('Sheet1', 'A2', 'A' & lastrow).value
我不斷收到:「不支持的操作類型爲&:‘海峽’和'廉政」 或「無法將‘詮釋’對象隱含str的」
當然,他們是後一起,地址應該看起來像A2:$ A $ 70006
即使您只是有一個可能的解決方法列表的鏈接或只是「這不能完成」。一切都會好起來的。再次感謝你。
ps。對於論壇本身,如果我應該以另一種方式提出這個問題,或者應該以另一種方式進行構建,請讓我知道,以便我可以修復它。再次感謝你。
Hi Ance。這工作。我感謝你,並且要去了解format()是如何工作的,以便將來能夠充分利用它。謝謝。 PS。我試着:Range('Sheet1','A2:%s'%lastrow)和Range('Sheet1','A2:A%d'%lastrow),其中'lastrow'= 70006,但沒有任何工作。非常感謝。 – Jim
如果你像使用Range('Sheet1','A2:%s'%str(mylastrow)).value一樣,%字符串格式化也可能起作用,但是你必須注意傳遞正確類型的參數(數字,string,...)。那str.format()更像是python 3的方式來做到這一點。無論如何,沒有問題,我很樂意幫助你:) – Ance
@Jim你可能想使用xlwngs的能力來解決單元格索引而不是地址,例如:Range((1,1),(10,10)) ' –