我有一個電子表格,其中包含默認表格大小和佈局,該表格由另一個電子表格中的信息填充。該表總是具有相同的列數,但行中的條目數量可能會有所不同。我想選擇表格中的所有數據,並將其粘貼到另一個表格中,而不復制任何空行。從默認表格大小VBA中選擇所有數據Excel
我的初步嘗試參與下面的代碼:
Set rightcell = Range("B9").End(x1Right)
Set bottomcell = Range(rightcell).End(x1Down)
定義右下角應該是什麼,所以我可以引用整個表所示:
Range("B9", bottomcell).Select
或複製或什麼。當我運行它時,它給了我一個「用戶定義或對象定義的錯誤」,我不知道爲什麼。我把代碼輸入爲一個更大的子集的一部分,我已經將我的變量定義爲範圍和變體,以嘗試使其發揮作用。我花了很多時間在互聯網上搜索解決方案,但到目前爲止,我發現的信息並未明確與我的問題相關,也沒有類似的解決方案。
有誰知道這是什麼適當的編碼,或者如果我正在做一些小的錯誤,拋出一切關閉?我記得在大學的一個項目中遇到同樣的問題,但在我的生活中,我無法回想起解決方案。這非常令人沮喪。
另外,如果我太模糊或者您需要更多關於任務的說明,請不要猶豫。先謝謝您的幫助!
編輯:我忽略了一個重要的注意事項,即我想從中提取數據的表格是在多頁其他表格的中間,我不想與之交互。
謝謝,這個解決方案几乎完美。 我不知道爲什麼,但我不得不將底部搜索行更改爲不同的列以便實際查找最後一行。該功能是從電子表格頂部還是從指定範圍(本例中爲B9)搜索? – user2844154
好,我很高興它適合你的目的!這裏的'.Find'功能從底部到頂部搜索工作表;最高的是B9。因此,如果表格下方的表格試圖複製,那麼'.Find'函數將在該表格處停止。 (*符號正在尋找單元格中的任何字符。) – ARich
雖然'.Find'更加健壯(IMO),您可以使用它:'bottomcell = Range(「B9」)。End(xlDown).Row' 。 – ARich