View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Peter T Peter T is offline
external usenet poster
 
Posts: 5,600
Default Evaluate vba matric

change -
.Names.Add Name:="ArrTemp", RefersToR1C1:="={A,B,C,D,E,F,G,H,I,J}"


to -
.Names.Add Name:="ArrTemp", RefersToR1C1:=Array(A, B, C, D, E, F, G, H, I,
J)
or
dim vArr as variant
varr = Array(A, B, C, D, E, F, G, H, I, J)
.....refersto:=vArr

Regards,
Peter T

"PST" wrote in message
...
Hello

Why the second macro does not work, the first yes , it there t it a
resolution so that it takes into account letters. purpose it is to apply
a matrix to a picture without crire on the disc.

purpose it is to apply a matrix to an array without writing on the disc.

1)Work

Sub test_mat_array()
With ActiveWorkbook
.Names.Add Name:="ArrTemp",

RefersToR1C1:="={1,2,3,4,5,6,7,8,9,10}"
.ActiveSheet.Cells(1, 1).Value =
Evaluate("=SUMPRODUCT(--(ArrTemp=1),--(ArrTemp<=5))")
.Names("ArrTemp").Delete
End With
End Sub


2) does not work

With ActiveWorkbook

A = 1
B = 2
C = 3
d = 4
E = 5
F = 6
G = 7
H = 8
I = 9
j = 10

.Names.Add Name:="ArrTemp", RefersToR1C1:="={A,B,C,D,E,F,G,H,I,J}"
.ActiveSheet.Cells(1, 1).Value =
Evaluate("=SUMPRODUCT(--(ArrTemp=1),--(ArrTemp<=6))")
.Names("ArrTemp").Delete
End With

thank you