View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 27,285
Default Problem with my Else statement

Sub AA()
Dim sStr As String, bFound As Boolean
Dim sStr1 As String, bFound1 As Boolean
Dim i As Long
Dim exe_path As String
Dim config_path As String

exe_path = "C:\Program Files\RealVNC\vncviewer.exe"
config_path = "C:\temp\v4-5900.vnc"

sStr = ""
bFound = False
If Dir(exe_path) < "" Then
' found at default
bFound = True
sStr = exe_path
Else
With Application.FileSearch
.NewSearch
.LookIn = "C:\"
.SearchSubFolders = True
.Filename = "vncviewer.exe"
.FileType = msoFileTypeAllFiles
If .Execute() 0 Then
For i = 1 To .FoundFiles.Count
If InStr(1, .FoundFiles(i), "\vncviewer.exe", vbTextCompare)
Then
bFound = True
sStr = .FoundFiles(i)
Exit For
End If
Next i
End If
End With
End If


sStr1 = ""
bFound1 = False
If Dir(config_path) < "" Then
bFound1 = True
sStr1 = config_path
Else
With Application.FileSearch
.NewSearch
.LookIn = "C:\"
.SearchSubFolders = True
.Filename = "v4-5900.vnc"
.FileType = msoFileTypeAllFiles
If .Execute() 0 Then
For i = 1 To .FoundFiles.Count
If InStr(1, .FoundFiles(i), "v4-5900.vnc", vbTextCompare) Then
bFound1 = True
sStr1 = .FoundFiles(i)
End If
Next i
End If
End With
End If


If bFound And bFound1 Then
' both file found
Shell sStr & " -config " & sStr1
ElseIf bFound Then
' Only viewer found
Shell sStr
ElseIf bFound1 Then
MsgBox "Only config file found, no viewer"
Else
MsgBox "viewer and config file not found"
End If


End Sub



--
Regards,
Tom Ogilvy

"SATATOM" wrote in message
...
I have been working on this little project for a few days now and I cannot
figure out how to do this. I need to search a users hard drive for two
files; first in thier defualt locations. If they are both found in

default
locations then they passed into the shell script and run, otherwise the

parts
that are not in thier default locations are searched for and then passed

into
the shell and run, else error messages for the file or files that were nto
found are sent to the user. Here is my code for this if you have any

ideas
or tips please let me know.

Sub AA()
Dim sStr As String, bFound As Boolean
Dim i As Long
Dim exe_path As String
Dim config_path As String

exe_path = "C:\Program Files\RealVNC\vncviewer.exe"
config_path = "C:\temp\v4-5900.vnc"



sStr = ("Z -config ")
sStr = ("Z -config F")
bFound = False
With Application.FileSearch
.NewSearch
.LookIn = "C:\"
.SearchSubFolders = True
.Filename = "vncviewer.exe"
.FileType = msoFileTypeAllFiles
If Dir(exe_path) < "" Then GoTo ConfigSearch

Else

If .Execute() 0 Then
For i = 1 To .FoundFiles.Count
If InStr(1, .FoundFiles(i), "\vncviewer.exe", vbTextCompare)

Then
bFound = True
sStr = Replace(sStr, "Z", .FoundFiles(i))
Shell sStr
Exit For
End If
Next i
If Not bFound Then _
MsgBox "RealVNC not found"
Else
MsgBox "RealVNC not found."
End If
End If
End With

ConfigSearch: 'label

With Application.FileSearch
.NewSearch
.LookIn = "C:\"
.SearchSubFolders = True
.Filename = "v4-5900.vnc"
.FileType = msoFileTypeAllFiles
If Dir(config_path) < "" Then

Shell (exe_path & " -config " & config_path)
Else
If .Execute() 0 Then
For i = 1 To .FoundFiles.Count
If InStr(1, .FoundFiles(i), "v4-5900.vnc", vbTextCompare) Then
bFound = True
sStr = Replace(sStr, "F", .FoundFiles(i))
Shell sStr
Exit For
End If
Next i
If Not bFound Then _
MsgBox ".VNC File Not Found."
Else
MsgBox ".VNC File Not Found."
End If
End If
End With

End Sub