Du kan løbe ind i problemer, når du forsøger at programmering skrive til en åben Excel-regneark , især hvis du åbner den en anden gang. Excel understøtter ikke åbne en anden projektmappe med det samme navn , selvom den er gemt på en anden vej. Med Visual Basic for Applications eller VBA , kan du bruge Window interface objekt til at skifte aktive Windows stedet for at åbne regnearket til at overføre data. Brug af vinduet objekt kan også forbedre dataoverførselshastighed , fordi du ikke behøver at åbne regnearket flere gange for at skrive til den. Instruktioner
1
Launch Excel og type "Dette er den åben sheet " i " A1 ". Gem projektmappen til "C: \\ Temp \\ " som " . Sheet1.xlsx "
2
Start en ny session af Excel , og skriv " data a " i " A1 ", " data b" i " B1 " og " data c" i "C1 ". Klik på " Udvikler " fanen, og klik på " Visual Basic " for at starte Visual Basic Editor-vinduet . Klik på " Indsæt" menuen og klikke på " Modul ". Indtast følgende kode til at oprette en ny procedure : " . Enter "
Private Sub transferDataToSheet ()
Press
3
Kopier og indsæt følgende at oprette tre variabler til at holde celle data:
Dim clmnA As String
Dim clmnB As String
Dim clmnC As String
4
Copy og indsæt følgende kode for at gemme værdierne i cellerne A1, B1 og C1 i variable: . .
med regneark ( " Ark1 " )
Range (" A1" ) Vælg
clmnA = ActiveCell.Value
. Range (" B1 "). Vælg
clmnB = ActiveCell.Value
. Range (" C1 "). Vælg < br >
clmnC = ActiveCell.Value
End With
5
Kopier og indsæt følgende for at aktivere det åbne regneark ( Sheet1.xlsx ) : Hej
. Windows ( " Ark1 " ) Aktiver
6
Kopier og indsæt følgende for at overføre data fra din aktuelle regneark til det åbne regneark : Hej
med regneark ( " Ark1 " ) < br >
. Range (" A2 "). Vælg
Selection.Value = clmnA
. Range (" B2 "). Vælg
Selection.Value = clmnB
. Range (" C2 "). Vælg
Selection.Value = clmnC
End With
7
Tryk på " F5" for at køre din procedure for at overføre data til det åbne regneark.