怎么使用C#呼叫vba實作excel中資料生成資料透視表
已有vba代碼如下:
Sub Macro1()
'
' Macro1 Macro
' 宏由 Liu 錄制,時間: 2018/3/2
'
' 快捷鍵: Ctrl+x
'
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Sheet1!R1C1:R45277C8").CreatePivotTable TableDestination:="", TableName:= _
"資料透視表1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveSheet.PivotTables("資料透視表1").PivotFields("貨號").Subtotals = Array(False, _
False, False, False, False, False, False, False, False, False, False, False)
ActiveSheet.PivotTables("資料透視表1").AddFields RowFields:=Array("品名", "地址", "發貨人", _
"貨號", "識訓人")
ActiveSheet.PivotTables("資料透視表1").PivotFields("數量").Orientation = xlDataField
ActiveWorkbook.ShowPivotTableFieldList = False
Application.CommandBars("PivotTable").Visible = False
End Sub
使用的資料如下表所示

使用的C#程式是 https://download.csdn.net/download/lzy526124/1883065所提供的
但使用該程式之后 原有的表格打開后都變成了只讀檔案 且不能進行批處理操作 對源檔案沒有生成新的sheel 并生成資料透視表
請各大神幫助
uj5u.com熱心網友回復:
直接在C#代碼里把宏內容修改完加進去,不要運行excel內的宏。宏代碼添在在Excel.Application打開作業簿以后。
把ActiveWorkbook替換成Workbook物件,把ActiveSheet替換換成Workbook.Sheets[n]賦給WorkSheet物件就可以了。
uj5u.com熱心網友回復:
可以幫我編輯一下嗎 你說的 我不是很懂 如果可以的話會有其他獎勵uj5u.com熱心網友回復:
能不能幫我實作一下代碼啊 我試著加進去實在是加不進去 如果可以的話 會有一定報酬轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/40390.html
標籤:VBA
