Eine Array-Funktion gibt es nicht.
Aber dein Verfahren ist falsch:

1. brauchst du ein Connection-Objekt
dim MyCon as new ADODB.Connection
Dort brauchst du nur 1x den Open.

2. fährst du besser mit einem Command-Objekt.
dim MyCmd as new ADOD.Command
MyCmd.Commandtext = UPDATE Tab1 SET Wert = ? WHERE Wert2 = 11 and Wert3= ?"

Dann kannst du in einer Schleife
MyCmd(0) = temp
MyCmd(1) = nummer
MyCmd.Execute
durchführen.

Zum Schluss kommt dann noch MyCon.Close.
Empfehlenswert ist noch ein Index über Wert und Wert2 der Tabelle Tab1.