und nochwas...
... im Grunde willst du aus dem bestehenden code Flexibilität herausnehmen, um in besser an deine konkretes Problem anzupassen. Das ist einfacher als umgekehrt.
Diese im Grunde pragmatische aber unschöne VB-Antwort auf introspection brauchst du nicht.
temp1=.Cells( row, 1 ).Value
temp2=.Cells( row, 2 ).Value
temp3=.Cells( row, 3 ).Value
temp4=.Cells( row, 4 ).Value
temp5=.Cells( row, 5 ).Value
temp6=.Cells( row, 6 ).Value
temp7=.Cells( row, 7 ).Value
temp8=.Cells( row, 8 ).Value
temp9=.Cells( row, 9 ).Value
temp10=.Cells( row, 10 ).Value
temp11=.Cells( row, 11 ).Value
temp12=.Cells( row, 12 ).Value
temp13=.Cells( row, 13).Value
temp14=.Cells( row, 14).Value
temp15=.Cells( row, 15 ).Value
temp16=.Cells( row, 16 ).Value
temp17=.Cells( row, 17 ).Value
temp18=.Cells( row, 18 ).Value
temp19=.Cells( row, 19 ).Value
temp20=.Cells( row, 20 ).Value
temp21=.Cells( row, 21 ).Value
temp22=.Cells( row, 22 ).Value
temp23=.Cells( row, 23 ).Value
temp24=.Cells( row, 24 ).Value
temp25=.Cells( row, 25 ).Value
temp26=.Cells( row, 26 ).Value
temp27=.Cells( row, 27 ).Value
temp28=.Cells( row, 28 ).Value
temp29=.Cells( row, 29 ).Value
temp30=.Cells( row, 30 ).Value
temp31=.Cells( row, 31 ).Value
temp32=.Cells( row, 32 ).Value
temp33=.Cells( row, 33 ).Value
temp34=.Cells( row, 34 ).Value
temp35=.Cells( row, 35 ).Value
temp36=.Cells( row, 36 ).Value
temp37=.Cells( row, 37 ).Value
temp38=.Cells( row, 38 ).Value
temp39=.Cells( row, 39 ).Value
temp40=.Cells( row, 40 ).Value
temp41=.Cells( row, 41 ).Value
temp42=.Cells( row, 42 ).Value
temp43=.Cells( row, 43 ).Value
temp44=.Cells( row, 44 ).Value
temp45=.Cells( row, 45 ).Value
temp46=.Cells( row, 46 ).Value
temp47=.Cells( row, 47 ).Value
temp48=.Cells( row, 48 ).Value
temp49=.Cells( row, 49 ).Value
temp50=.Cells( row, 50 ).Value
temp51=.Cells( row, 51 ).Value
temp52=.Cells( row, 52 ).Value
temp53=.Cells( row, 53 ).Value
temp54=.Cells( row, 54 ).Value
temp55=.Cells( row, 55 ).Value
temp56=.Cells( row, 56 ).Value
temp57=.Cells( row, 57 ).Value
temp58=.Cells( row, 58 ).Value
temp59=.Cells( row, 59 ).Value
temp60=.Cells( row, 60 ).Value
temp61=.Cells( row, 61 ).Value
temp62=.Cells( row, 62 ).Value
temp63=.Cells( row, 63 ).Value
temp64=.Cells( row, 64 ).Value
temp65=.Cells( row, 65 ).Value
temp66=.Cells( row, 66 ).Value
temp67=.Cells( row, 67 ).Value
temp68=.Cells( row, 68 ).Value
temp69=.Cells( row, 69 ).Value
temp70=.Cells( row, 70 ).Value
temp71=.Cells( row, 71 ).Value
temp72=.Cells( row, 72 ).Value
temp73=.Cells( row, 73 ).Value
temp74=.Cells( row, 74 ).Value
temp75=.Cells( row, 75 ).Value
temp76=.Cells( row, 76 ).Value
temp77=.Cells( row, 77 ).Value
temp78=.Cells( row, 78 ).Value
temp79=.Cells( row, 79 ).Value
temp80=.Cells( row, 80 ).Value
temp81=.Cells( row, 81 ).Value
temp82=.Cells( row, 82 ).Value
temp83=.Cells( row, 83 ).Value
temp84=.Cells( row, 84 ).Value
temp85=.Cells( row, 85 ).Value
temp86=.Cells( row, 86 ).Value
temp87=.Cells( row, 87 ).Value
temp88=.Cells( row, 88 ).Value
temp89=.Cells( row, 89 ).Value
temp90=.Cells( row, 90 ).Value
temp91=.Cells( row, 91 ).Value
temp92=.Cells( row, 92 ).Value
temp93=.Cells( row, 93 ).Value
temp94=.Cells( row, 94 ).Value
temp95=.Cells( row, 95 ).Value
temp96=.Cells( row, 96 ).Value
temp97=.Cells( row, 97 ).Value
temp98=.Cells( row, 98 ).Value
temp99=.Cells( row, 99 ).Value
temp100=.Cells( row, 100 ).Value
Du willst doch nur 3 Felder.
Also dürfte alles was hinter temp3 ist sinnlos sein.
Und temp1 bis temp3 hast du ja schon durch die hartkodierten Felder ersetzt, oder
Um das auslesen von excel mit deiner OLE-Lösung in der 2. Zeile zu beginnen, mach einfach so:
Rest dürfte nicht so schwer sein.
Schaus dir zur Not im debugger an.
... und lösch nicht-mehr-sinnvolle Zeilen, sonst ärgerst du oder dein Nachfolger sich in 8 Wochen, wenn da ein neues Feld in Excel eingefügt wird.