View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
Neal Zimm Neal Zimm is offline
external usenet poster
 
Posts: 345
Default Application InputBox Type 8 Error

Thanks Dave,
In the structure on the entire testing Sub, there is no looping, but
setting the range to nothing is a good standard, I forgot it in the shown
code, but usually do it.

--
Neal Z


"Dave Peterson" wrote:

If excel is crashing (and wants to close) because of this, it's not your code
that's the problem. I think you may want to consider rebuilding your workbook.

If you copy the code to a new workbook and put in just enough test data, I bet
excel won't crash that hard.

ps.

If you're looping through that code, I'd make sure that the range variable is
reset to nothing before you do the application.inputbox:

set testrng = nothing
On Error Resume Next
Set TestRng = application.inputbox(...)
on error goto 0

if testrng is nothing then
....

=====
but this change doesn't have anything to do with excel crashing. But it may
stop your code from crashing (or doing the wrong thing <vbg).

Neal Zimm wrote:

Hi All,
Code below is a paragraph from a testing sub that execs other procs and
feeds them TestRow.

TestRng and other vars are properly dim'd.

I don't understand why I get a microsoft has to close error. I use the
default as a text reminder to me. Msoft type 8, i guess, does not interpret
the text as a bad range address to give me the typical application input box
error msg when I forget to click a cell before clicking OK.

I've since changed the code below to use selection.row

Have I found a MSoft bug?

Thanks.

Get_TestRow: 'get a row#
On Error Resume Next
Set TestRng = Application.InputBox(sPrompt, Procname, _
"Click CANCEL to Exit Test", Type:=8)
If TestRng Is Nothing Then
If vbYes = MsgBox("Row not selected, END TEST ??", _
vbYesNo + vbDefaultButton2, Procname) Then

Exit Sub
Else
GoTo Get_TestRow
End If
End If

TestRow = TestRng.Row
Return

--
Neal Z


--

Dave Peterson