Wie übertragen von Daten auf einem geöffneten Blatt auf Excel VBA

June 30

Wie übertragen von Daten auf einem geöffneten Blatt auf Excel VBA

Sie können in Schwierigkeiten führen, wenn Sie versuchen, in einem geöffneten Excel-Arbeitsblatt programmgesteuert zu schreiben vor allem, wenn Sie es ein zweites Mal öffnen. Excel unterstützt keine einer anderen Arbeitsmappe zu öffnen, mit dem gleichen Namen, auch wenn sie in einem anderen Pfad gespeichert wird. Das Objekt Window-Schnittstelle können Sie mit Visual Basic für Anwendungen oder VBA um aktive Fenster anstatt zu öffnen die Kalkulationstabelle zur Übertragung von Daten zu wechseln. Mit dem Window-Objekt kann auch die Datenübertragungs-Geschwindigkeit verbessern, weil Sie nicht die Tabelle mehrmals öffnen zu schreiben.

Anweisungen

1 Starten Sie Excel, und geben Sie "Dies ist das offene Blatt" in "A1." Speichern Sie die Arbeitsmappe an "C:\Temp\" als "Sheet1.xlsx."

2 Starten Sie eine neue Sitzung von Excel, und geben Sie "Daten ein" in "A1", "Daten-b" in "B1" und "Daten-c" in "C1." Klicken Sie auf die Registerkarte "Entwicklertools", und klicken Sie auf "Visual Basic", um das Visual Basic-Editor-Fenster zu starten. Klicken Sie im Menü "Einfügen" und auf "Module". Geben Sie den folgenden Code, um ein neues Verfahren zu erstellen:

Private Sub transferDataToSheet()

Drücken Sie "Enter."

3 Kopieren Sie und fügen Sie Folgendes ein, um die drei Variablen Daten in Zellen zu halten erstellen:

Dim clmnA As String

Dim clmnB As String

Dim clmnC As String4

Kopieren Sie und fügen Sie den folgenden Code, um die Werte in den Zellen A1, B1 und C1 in Variablen speichern:

With Worksheets("Sheet1")

.Range("A1").Select

clmnA = ActiveCell.Value

.Range("B1").Select

clmnB = ActiveCell.Value

.Range("C1").Select

clmnC = ActiveCell.Value

End With5

Kopieren Sie und fügen Sie Folgendes ein, um die geöffneten Arbeitsblatt (Sheet1.xlsx) zu aktivieren:

Windows("Sheet1").Activate6

Kopieren Sie und fügen Sie Folgendes ein, um die Daten aus dem aktuellen Arbeitsblatt auf dem geöffneten Arbeitsblatt übertragen:

With Worksheets("Sheet1")

.Range("A2").Select

Selection.Value = clmnA

.Range("B2").Select

Selection.Value = clmnB

.Range("C2").Select

Selection.Value = clmnC

End With7

Drücken Sie die "F5" führen Sie die Prozedur Daten auf dem geöffneten Arbeitsblatt übertragen.