使用 python 将特殊值粘贴到另一个多个 excel 文件

paste special value to another multiple excel files with python

我尝试使用 glob 两次,以便它可以复制并粘贴到多个文件。但是这个东西只复制第一个数据并打印从第一个到最后一个相同的所有数据。我想将第一个复制到不同的文件夹第一个数据,然后将第二个复制到不同的文件夹第二个数据,依此类推。提前感谢您的帮助

from win32com.client import Dispatch
import glob

ws = 'OUTPUT'
ws2 = 'Original data'
excel = Dispatch("Excel.Application")

for filename in glob.glob("D:/apera/Workspace/Sounding/sounding*.xlsx"):
    data = excel.Workbooks.Open(filename)
    data.Worksheets(ws).Range('F1:H500').Copy()
    for filename2 in glob.glob("D:/apera/Workspace/Sounding2/sounding*.xlsx"):
        copy = excel.Workbooks.Open(filename2)
        copy.Worksheets(ws2).Range('A1:C500').PasteSpecial(Paste=-4163)

例子 从 sounding001_out

复制值

然后在 sounding001

中粘贴特殊值

然后再做一次 sounding_002 到 sounding002,依此类推

你说你想从 sounding001_out 复制到 sounding001,从 sounding002_out 复制到 sounding002,等等。 然后,您必须使用一个循环,并适当地为您的文件名设置字符串值。 对于您发布的案例,

filename2 = filename.replace( '_', '' ).replace( 'Sounding', 'Sounding2' )

应该可以工作(删除内循环)。对于其他情况,您必须参考 Python strings

上的文档

https://docs.python.org/2/library/stdtypes.html#sequence-types-str-unicode-list-tuple-bytearray-buffer-xrange

https://docs.python.org/2/library/string.html