Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have this code and am having trouble with the Sumproduct working. I get a
Run-Time Error 13 and Type Mismatch message? Can anyone help. Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") mTimeCriteria = """" & mTimeCriteria & """" MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & _ mTimeCriteria & """), " & mQuestion1Range.Address & ")") |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi
I tried to split up your code a bit, and found that the line commented out below is not needed: Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range Dim MyFormula As String mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") 'mTimeCriteria = """" & mTimeCriteria & """" MyFormula = "=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & mTimeCriteria & """), " & mQuestion1Range.Address & ")" Result = Evaluate(MyFormula) MsgBox Result Hopes this helps. .... Per On 20 Nov., 13:52, DogLover wrote: I have this code and am having trouble with the Sumproduct working. *I get a Run-Time Error 13 and Type Mismatch message? *Can anyone help. * Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") mTimeCriteria = """" & mTimeCriteria & """" MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & _ mTimeCriteria & """), " & mQuestion1Range.Address & ")") |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Try the below...You already have added double quotes ....mTimeCriteria = """"
& mTimeCriteria & """". So you can remove the double double quotes mentioned within the evaluate() MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "=" & _ mTimeCriteria & "), " & mQuestion1Range.Address & ")") If this post helps click Yes --------------- Jacob Skaria "DogLover" wrote: I have this code and am having trouble with the Sumproduct working. I get a Run-Time Error 13 and Type Mismatch message? Can anyone help. Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") mTimeCriteria = """" & mTimeCriteria & """" MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & _ mTimeCriteria & """), " & mQuestion1Range.Address & ")") |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
This is getting closer. Both your suggestions eliminated the Error message.
The formula is evaluating to 0. It should be 915 if I have everything correct. The formula in my spreadsheet which evaluated to 915 is:=SUMPRODUCT( --(DataTime="First day of employment (Time 1)"),( DataQuestion1) ) Do you see something off in the way it is in the VBA format that would make it correct? "Jacob Skaria" wrote: Try the below...You already have added double quotes ....mTimeCriteria = """" & mTimeCriteria & """". So you can remove the double double quotes mentioned within the evaluate() MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "=" & _ mTimeCriteria & "), " & mQuestion1Range.Address & ")") If this post helps click Yes --------------- Jacob Skaria "DogLover" wrote: I have this code and am having trouble with the Sumproduct working. I get a Run-Time Error 13 and Type Mismatch message? Can anyone help. Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") mTimeCriteria = """" & mTimeCriteria & """" MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & _ mTimeCriteria & """), " & mQuestion1Range.Address & ")") |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
You need to specify that the address inclusive of sheet name.... as below
Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") MsgBox Evaluate("=SUMPRODUCT( --(" & _ mTimeRange.Address(External:=True) & _ "= """ & mTimeCriteria & """), " & _ mQuestion1Range.Address(External:=True) & ")") 'OR' since you have only one condition you can use sumif() as below MsgBox WorksheetFunction.SumIf(mTimeRange, mTimeCriteria, mQuestion1Range) If this post helps click Yes --------------- Jacob Skaria "DogLover" wrote: This is getting closer. Both your suggestions eliminated the Error message. The formula is evaluating to 0. It should be 915 if I have everything correct. The formula in my spreadsheet which evaluated to 915 is:=SUMPRODUCT( --(DataTime="First day of employment (Time 1)"),( DataQuestion1) ) Do you see something off in the way it is in the VBA format that would make it correct? "Jacob Skaria" wrote: Try the below...You already have added double quotes ....mTimeCriteria = """" & mTimeCriteria & """". So you can remove the double double quotes mentioned within the evaluate() MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "=" & _ mTimeCriteria & "), " & mQuestion1Range.Address & ")") If this post helps click Yes --------------- Jacob Skaria "DogLover" wrote: I have this code and am having trouble with the Sumproduct working. I get a Run-Time Error 13 and Type Mismatch message? Can anyone help. Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") mTimeCriteria = """" & mTimeCriteria & """" MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & _ mTimeCriteria & """), " & mQuestion1Range.Address & ")") |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Check one of your other messages.
DogLover wrote: I have this code and am having trouble with the Sumproduct working. I get a Run-Time Error 13 and Type Mismatch message? Can anyone help. Dim mTimeCriteria As String Dim mQuestion1Range As Range, mTimeRange As Range mTimeCriteria = "First day of employment (Time 1)" Set mTimeRange = Worksheets("Data").Range("DataTime") Set mQuestion1Range = Worksheets("Data").Range("DataQuestion1") mTimeCriteria = """" & mTimeCriteria & """" MsgBox Evaluate("=SUMPRODUCT( --(" & mTimeRange.Address & "= """ & _ mTimeCriteria & """), " & mQuestion1Range.Address & ")") -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
run time error 1004 general odbc error excel 2003 vba | Excel Programming | |||
Visual Basic Error Run Time Error, Type Mismatch | Excel Discussion (Misc queries) | |||
Urgent!!! Run-time error '-2147024770 (8007007e)' Automation error | Excel Programming | |||
Error handling error # 1004 Run-time error | Excel Programming | |||
run-time error '1004': Application-defined or object-deifined error | Excel Programming |