PythonでExcelで特別な貼り付け方法
質問
それで、私はあるWOorkbookから別のWOorkbookにたくさんのデータをコピーしようとしています。問題は、ソースワークブックのデータには奇妙なフォーミングがあるため、値を取得したいということです。私がこれまでに持っているコードはこれです。
excel=win32com.client.Dispatch("Excel.Application");
excel.Visible = 1;
source = excel.Workbooks.Open(Cali.xlsm');
copy = excel.Workbooks.Open(temp.xlsx');
sdata = source.ActiveSheet;cdata = copy.ActiveSheet;
data=sdata.Range("89:89")
sdata.Range("89:89",data.End(4)).Copy()
今、私は使用できます
cdata.Paste()
しかし、それもフォーミングを貼り付けます
私は見つけました
cdata.PasteSpecial()
しかし、それはまた、フォーミングを貼り付けます。
PasteSpecial()の使用方法を知っている人なら誰でも、値だけをコピーするか、誰かが私が非常に高く評価するより良い方法を知っています。
解決
セルA1:A3からの値をあるワークブックから別のワークブックにコピーする以下を試すことができます。
from win32com.client import Dispatch
wkbk1 = "...\workbook1.xlsx"
wkbk2 = "...\workbook2.xlsx"
excel = Dispatch("Excel.Application")
excel.Visible = 1
source = excel.Workbooks.Open(wkbk1)
excel.Range("A1:A3").Select()
excel.Selection.Copy()
copy = excel.Workbooks.Open(wkbk2)
excel.Range("A1:A3").Select()
excel.Selection.PasteSpecial(Paste=-4163)
WKBK1とWKBK2は、2つのワークブックへのファイルパスです。
所属していません StackOverflow