經常需要動態刪除程式中的行和列,但通常很難獲得。 excel 2002(xp)中包含的vb-6幫助檔案並不總是提供執行此操作所需的幫助。
通過記錄巨集,可以開發以下**段:
sub macro1()
'' macro1 macro
' macro recorded 9/16/2009 by ebernon''
rows("1:20").select
selection.delete shift:=xlup
end sub
但是,巨集記錄的行是使用靜態「 a1參考」注釋(excel的預設值)確定的,這不允許在程式中刪除「動態」行設定。
您可以將引用「 1:20」更改為數字或變數,但隨後可以引用單個row。
要解決此問題,以下**片段提供了要使用「範圍物件」方法刪除的行的動態設定:
sub macro2()
'' macro2 macro
' macro recorded 9/16/2009 by ebernon''
n1 = 20
n2 = 1
range(rows(n1), rows(n2)).select
selection.delete shift:=xlup
end sub
請注意,開始行和結束行n1和n2不必按任何順序排列,因為excel中的範圍物件會自動對此進行調整。
而且,現在可以在程式中或通過操作員輸入的資料來設定n1和n2。
對於列,只需將「 range(columns(n1),columns(n2))。select」替換為要刪除的範圍。
程式設計愉快!
from:
datagridview 動態新增列和行
datagridview1.readonly true 禁用編輯功能 方法一 通過手動新增datatable,再繫結datagridview datatable dt new datatable 建立個資料表 dt.columns.add new datacolumn id typeof int 在...
動態隱藏ALV的行和列
本例和行列例程轉換不同,內錶結構是固定的,僅僅是通過alv的fieldcat和filter來隱藏 顯示alv的行和列 列 form changefield loop at gt fieldcat into gs fieldcat gs fieldcat no out if gs fieldcat f...
C 動態新增DataGridView列和行
在winform的c 應用中,datagridview作為重要的資料組織和顯示控制項,作用極大。在datagridview的資料組織時,一般都採用資料來源繫結的方式 datasource 與dataset datatable或list來組織,很少出現不使用datasource而動態新增的方式。所以網...