2017-07-27 81 views
1

我在這裏有一個工作表,其中包含多列滿數據,範圍從單元AA到當前的CT。第一列包含標題行並被凍結。數據每週添加到此範圍的最後一列。 &然後刪除第一個和最後四個之間的所有列(以顯示一個月的價值數據,但保持標題完整)。刪除工作表中第一個和最後四個之間的所有列

我對VBA很新,我一直在試圖編寫一些代碼來實現這一點,到目前爲止,我已經設法從最後選擇第五列。但我不能得到它選擇列之間的第4列之間的結束和單元格AA:

Sub DeleteColumns() 
    Dim i 
    i = Range("KFIData").End(xlToRight).Offset(0,-4).EntireColumn.Select 
    Columns("AA:ColumnFive").Delete 
End Sub 

我是否完全錯誤的方式?

非常感謝

+0

您確定要刪除**欄**嗎?或者你只想刪除列的**內容**? – Noceo

回答

1

那麼,如果你設法從到底抓5列,使用以下語句:

Range(Columns("AA"), Columns(ColumnFiveFromEnd)).Delete 

ColumnFiveFromEnd可以是數字以及文字標識。

+0

我認爲這會提高可讀性,如果你是一致的關於通過字母(s)編號的列。否則,它看起來像一個很好,簡單的代碼行。 – Noceo

+0

@Noceo我很感謝你對可讀性的關注。然而在這種情況下,「AA」更具可讀性,因爲它與規範直接相關。最後一列是一個數字變量,它很難(儘管可行)將其轉換爲文本。 –

+0

我同意這是一個小問題。儘管你的編輯更容易理解。如果他不是新來的VBA,我可能根本就沒有解決它:-) – Noceo

相關問題