Vba: hoe u de waarde van een cel uit een ander blad haalt
U kunt de volgende methoden in VBA gebruiken om de celwaarde in een ander blad te krijgen:
Methode 1: Haal de waarde van een cel uit een ander blad
Sub GetCellAnotherSheet()
ActiveCell.Value = Worksheets(" Sheet2 ").Range(" A2 ")
End Sub
Deze specifieke macro haalt de waarde uit cel A2 in Blad2 en retourneert deze naar de momenteel actieve cel.
Methode 2: Haal het resultaat van de celwaardenbewerking op van een ander blad
U kunt ook een bewerking uitvoeren op cellen in een ander blad en het resultaat van de bewerking retourneren in de momenteel actieve cel.
U kunt bijvoorbeeld de volgende syntaxis gebruiken om de waarden in het bereik B2:B10 in Blad2 op te tellen en de som terug te geven in de momenteel actieve cel:
Sub GetCellAnotherSheet()
ActiveCell.Value = WorksheetFunction.Sum(Worksheets(" Sheet2 ").Range(" B2:B10 "))
End Sub
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.
Voorbeeld 1: Haal de waarde van een cel op uit een ander blad
Stel dat we het volgende blad hebben, genaamd Blad2 , dat informatie bevat over verschillende basketbalspelers:
Stel dat cel A2 op Blad1 momenteel is geselecteerd als de actieve cel.
We kunnen de volgende macro maken om de waarde in cel A2 van Blad2 op te halen en terug te zetten naar de momenteel actieve cel:
Sub GetCellAnotherSheet()
ActiveCell.Value = Worksheets(" Sheet2 ").Range(" A2 ")
End Sub
Wanneer we deze macro uitvoeren, kunnen we zien dat de waarde van cel A2 van Blad1 nu is ingesteld op „Mavs“, wat overeenkomt met de waarde van cel A2 van Blad2 :
Voorbeeld 2: Haal het resultaat van de celwaardenbewerking op van een ander blad
Laten we opnieuw aannemen dat we het volgende blad hebben, genaamd Blad2 , dat informatie bevat over verschillende basketbalspelers:
We kunnen de volgende macro gebruiken om de waarden in de puntkolom van Blad2 op te tellen en het resultaat terug te sturen naar de momenteel actieve cel, die toevallig cel A2 van Blad1 is:
Sub GetCellAnotherSheet()
ActiveCell.Value = WorksheetFunction.Sum(Worksheets(" Sheet2 ").Range(" A2 "))
End Sub
Wanneer we deze macro uitvoeren, kunnen we zien dat de som van de waarden in het bereik A2:A10 van Blad2 nu wordt weergegeven in cel A2 van Blad1 :
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
VBA: hoe u de waarde van een cel in een ander blad instelt
VBA: een bereik in een actieve cel selecteren
VBA: rijen verwijderen op basis van celwaarde