摘要

在 Microsoft Excel 中,您可以選取儲存格範圍內,手動或使用程式碼的一些簡單的 Microsoft Visual Basic for Applications。本文會提供您可用來選取儲存格範圍的範例。

其他相關資訊

如何以手動方式選取儲存格的範例

若要以手動方式選取所有的資料欄中,選取第一個儲存格,然後按 CTRL + SHIFT + 向下箭號。 同樣地,若要手動選取的列與附加至資料列的所有資料行,請按 CTRL + SHIFT + 向下箭號 + 向右箭號。不過,所有的資料必須是連續的 (也就是您不能有空白列或欄)。此外,您可以選取目前區域的資料 (不含空白列或欄,連續資料),方法如下:

  1. 在 [編輯] 功能表上按一下 [移至]。

  2. 在[到] 對話方塊中,按一下 [特殊]。

  3. 在[特殊] 對話方塊中,按一下目前的區域,,然後按一下[確定]。

您也可以使用簡單的 Visual Basic for Applications 程式碼,以選取這個範圍。注意如果您嘗試藉由使用巨集錄製器記錄這個程序,您不會收到相同的結果。

如何使用 Visual Basic 程式碼來選取儲存格範圍中的範例

Microsoft 提供程式設計範例僅供說明,不做任何明示或默示的保證。這包括,但不限於適售性或適合某特定用途之默示擔保責任。本文假設您已相當熟悉使用的我們所示範的程式設計語言以及建立和偵錯程序所使用的工具。Microsoft 技術支援工程師可以協助解釋特定程序中,功能,但它們不會修改這些範例以提供附加功能或建構程序來滿足您特定需求。下列的 Visual Basic 程式碼範例會告訴您,如何選取不同的範圍。如果您知道開頭的儲存格 (在這個範例中,開頭的儲存格是儲存格 C1),而您想要選取下 (在相同的欄中) 有資料的最後一個儲存格,但不是知道該位址,使用下列程式碼:

   Sub SelectRangeDown()      Range("c1", Range("c1").End(xlDown)).Select   End Sub

注意SelectRangeDown 巨集假設是連續的資料。否則,如果您選取的資料欄有空白儲存格,此巨集可能會選取所有您的儲存格資料行中。 如果您的資料在儲存格 C1 中,開始,但並不連續該資料行中,使用下列的巨集,在 Microsoft Office Excel 2003 和舊版的 Excel 中:

   Sub SelectRangeDown_Discontiguous()      Range("c1", Range("c65536").End(xlUp)).Select   End Sub

因為 Microsoft Office Excel 2007 支援 1048576 的資料列,請在 Excel 2007 中使用下列的巨集:

 Sub SelectRangeDown_Discontiguous()      Range("c1", Range("c1048576").End(xlUp)).Select   End Sub

如果您想要從使用中的儲存格往下和所有的資料行選取右邊 (假設所有的資料列和資料行中的連續資料),請使用下列程式碼:

   Sub myrangearea()      Range(ActiveCell, ActiveCell.End(xlDown).End(xlToRight)).Select   End Sub

如果您知道指定起始儲存格 (在這個範例程式碼中,指定起始儲存格是 D1),而您想要選取 [往下欄及右邊,請使用下列程式碼:

   Sub RangeFromStart()      Range("d1", Range("d1").End(xlDown).End(xlToRight)).Select   End Sub

若要選取目前的區域中的所有資料,請使用下列程式碼:

   Sub CurrentArea()      Selection.CurrentRegion.Select   End Sub

這份文件中所包含的範例顯示如何選取不同的範圍,在您目前的活頁簿的現用工作表上。如需有關如何 (以及更進階的範例),請選取與 Visual Basic for Applications 的範圍,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文的詳細資訊:

如何選取使用 Visual Basic 程序,在 Excel 中的儲存格/範圍

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×