看板 C_Sharp 關於我們 聯絡資訊
我想要寫個程式讓User修改Excel內檔案,並另存成.prn檔 在螢幕畫面會讓User輸入開始的sheet(變數為intpasssheet) 還會讓User輸入要刪除的行(變數為intclearline) 讓User可以一次選取多個檔案,而每個檔案有很多個Sheet 每個sheet都不同名稱,假設為SheetName、Age、Address、Phone、CellPhone 如果intpasssheet=2,則從第二個Sheet Age開始讀取並修改內容 如果intclearline=10,則從第二個Sheet Age開始刪除左邊開始數10行(即A~J) 並且將修改完的Sheet另存為.prn檔,檔名如sheet name Output檔案為Age.prn、Address.prn、Phone.prn、CellPhone.prn... 因為使用者輸入只會輸入幾行 並不會輸入A.B.C.D.... 請問我要如何一次刪除多行呢? 以下是我目前寫的Code http://codepad.org/tQlg0Isj 順便問一下,如果是2007的.xlsx是否就不能以我這個方式 做刪除多行或另存檔案的方式呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.47.28.213
gundan:你用這個元件OFFICE版本應該是沒有差 都可以用吧 04/28 00:06
gundan:我之前用這個元件讀寫,2003 或 2007都可以 04/28 00:07
※ 編輯: don750421 來自: 114.47.28.213 (04/29 02:08)
piadoro:Excel.Range delRng= wbkExcel.worksheets[intpasssheet]. 04/29 02:58
piadoro:range["A1"]; 04/29 02:58
piadoro:然後再用Excel.Range.Offset(x,y) 取得要刪除的範圍 04/29 03:00
piadoro:最後摳 Delete or Clear 憑印象寫的 技德是可以刪除整行 04/29 03:05
don750421:pia大,我懂你說的方法,好像也可以使用get_range 04/29 11:11
don750421:然後再做delete的動作 04/29 11:12
don750421:但是你這邊提到的(x,y)x指的是行?a.b.c.d.e.f 04/29 11:13
don750421:y指的是列1,2.3,4,5嗎? 04/29 11:13
don750421:但是使用者只輸入行,也就是代入x,那Y要怎麼代入才能刪 04/29 11:14
don750421:除整行呢? 04/29 11:14
don750421:麻煩指點^^ 04/29 11:15
piadoro:delRng.Offset[x,0 or missing].EntireColumns.Delete(); 04/30 16:02