VBA Größe ändern

Excel VBA Größe ändern

Größe ändern ist eine Eigenschaft, die in VBA verfügbar ist, um den Zellenbereich der aktiven Zelle nach Bedarf zu ändern oder seine Größe zu ändern. Angenommen, Sie befinden sich in der Zelle B5. Wenn Sie in dieser Zelle drei Zeilen und zwei Spalten auswählen möchten, können Sie die Größe eines Bereichs mithilfe der RESIZE-Eigenschaft von VBA ändern.

Syntax der VBA Resize-Eigenschaft

Unten finden Sie die Syntax der VBA RESIZE-Eigenschaft.

Bereich (). Größe ändern ([Zeilengröße], ​​[Spaltengröße])

Zunächst müssen wir mithilfe des Range- Objekts angeben, aus welcher Zelle die Größe geändert werden soll .

Dann nutzen Sie Excel VBA Resize Eigenschaft und in dieser Eigenschaft müssen wir liefern Zeilengröße Grenze und Spaltengröße zu begrenzen. Basierend auf den angegebenen Zeilennummern und Spaltennummern wird die Größe geändert.

Beispiele für die Verwendung von Resize in VBA

Nachfolgend finden Sie Beispiele für die Verwendung der Größenänderung in Excel VBA.

Sie können diese VBA-Größenänderungs-Excel-Vorlage hier herunterladen - VBA-Größenänderungs-Excel-Vorlage

Beispiel 1

Angenommen, Sie haben Daten von der A1- zur B14-Zelle und von der A1-Zelle, wenn Sie 3 Zeilen nach unten und zwei Spalten im linken Bereich auswählen möchten. Dies können Sie mithilfe der RESIZE-Eigenschaft in Excel VBA tun.

Nachfolgend finden Sie die Daten, die wir für dieses Beispiel verwenden.

Zunächst müssen wir also die erste Zellreferenz oder den ersten Startpunkt mithilfe des RANGE-Objekts angeben. In diesem Beispiel ist der Startpunkt die A1-Zelle.

Code:

Sub Resize_Example () Range ("A1"). End Sub

Verwenden Sie für diesen Bereich die RESIZE-Eigenschaft.

Code:

 Sub Resize_Example () Range ("A1"). Resize (End Sub 

Das erste Argument von RESIZE ist Row Größe , so dass wir die Daten auszuwählen 3 Reihen müssen und den numerischen Wert von 3 zu liefern.

Code:

 Sub Resize_Example () Range ("A1"). Resize (3, End Sub 

Das nächste Argument ist die Spaltengröße. Geben Sie ein, wie die Spalten ausgewählt werden sollen. Ich gebe 3 Spalten ein.

Code:

 Sub Resize_Example () Range ("A1"). Resize (3,3) End Sub 

Sobald die Größenänderung abgeschlossen ist, müssen wir angeben, was wir mit diesem Bereich tun müssen. Ich werde einfach die "Select" -Methode wählen, um zu beginnen.

Code:

 Sub Resize_Example () Range ("A1"). Resize (3, 3). Wählen Sie End Sub 

Führen Sie den Code aus und sehen Sie, wie viele Zeilen und wie viele Spalten er auswählen würde.

Wie Sie oben in der A1-Zelle sehen können, wurden drei Zeilen nach unten und drei Spalten nach rechts ausgewählt.

Beispiel 2

Schauen Sie sich nun den folgenden VBA-Code an.

In dem obigen Code für Zeilengröße, haben wir geliefert leere Zelle  und für Spaltengröße, haben wir geliefert 3.

Code:

 Sub Resize_Example () Range ("A1"). Resize (0, 3) .Select End Sub 

Führen Sie den Code aus und sehen Sie, wie viele Zeilen und wie viele Spalten er auswählen würde.

Wie Sie sehen können, wurden nur die aktive Zellenzeile ausgewählt, dh die erste Zeile und drei Spalten. Dies liegt daran , für Row Größe wir geliefert haben leere Zelle  und für Spalte - Größe, wir haben 3 geliefert, und dementsprechend hat es den Datenbereich ausgewählt.

Schauen Sie sich nun den folgenden Code an.

Code:

 Sub Resize_Example () Range ("A1"). Resize (3). Wählen Sie End Sub 

Dieser Code wählt nur drei Zeilen aus, einschließlich der aktiven Zellenzeile, aber keine zusätzlichen Spalten.

Beispiel 3

Verwenden Sie Größenänderung, um unbekannte Bereiche auszuwählen. Die Größenänderung wird am besten verwendet, wenn Sie einen unbekannten Zellbereich auswählen möchten. Schauen Sie sich zum Beispiel das folgende Bild des Datenbereichs an.

Es enthält Daten auf allen Wegen von Spalte A bis Spalte P und zeilenweise bis zur 700. Zeile.

Angenommen, Sie wissen, dass sich Ihre Daten ständig ändern, und Sie möchten den Datenbereich von Zeit zu Zeit auswählen, indem Sie die Zeilen- und Spaltennummer manuell ändern. Mit der VBA RESIZE-Eigenschaft können wir dies jedoch problemlos tun.

Schauen Sie sich den folgenden Code an.

Code:

 Sub Resize_Example1 () Dim LR As Long Dim LC As Long Arbeitsblätter ("Verkaufsdaten"). Wählen Sie LR = Cells (Rows.Count, 1) .End (xlUp) .Row LC = Cells (1, Columns.Count) .End (xlToLeft) .Column Cells (1, 1) .Resize (LR, LC) .Select End Sub 

Zuerst habe ich zwei Variablen deklariert, um die zuletzt verwendete Zeile (LR) und die zuletzt verwendete Spalte (LC) zu finden.

 Dim LR So lange Dim LC As Long 

Da sich unsere Daten im Arbeitsblatt mit dem Namen "Verkaufsdaten" befinden, wählen wir dieses Arbeitsblatt mit dem folgenden Code aus.

Arbeitsblätter („Verkaufsdaten“). Wählen Sie

Der folgende Code findet nun die zuletzt verwendete Zeile und die zuletzt verwendete Spalte.

LR = Zellen (Rows.Count, 1) .End (xlUp) .Row

LC = Cells (1, Columns.Count) .End (xlToLeft) .Column

Now from the first cell, we resizing the range from last used row to last used column and select is the method used. So now it doesn’t matter how big your data is it will dynamically select the data by finding the last used row and last used column.

Things to Remember

  • Resize property in VBA will change the size of the range from the active cell (including the active cell as well).
  • We just need to provide how many rows and how many columns to be resized from the active cell in VBA.
  • We cannot use negative row & column number for RESIZE property.