2017-02-17 4 views
-2

I Excel haben, Zelle enthält A1 als c:\user\download und Zell A2 enthält c:\user und Zell A3c:\ enthält.VBA Excel Code FollowHyperlink

Wo ich die Codierung wie folgt verwendet:

Sub opendfolder() 
    Dim myfolder As String, nextfolder as string, nextfolder1 as string 

    myfolder = Range("a1").Value 
    ActiveWorkbook.FollowHyperlink myfolder 

    nextfolder = range("a2").value 
    ActiveWorkbook.FollowHyperlink nextfolder 

    nextfolder1 = range("a3").value 
    ActiveWorkbook.FollowHyperlink nextfolder1 
End Sub 

Aber mein Problem ist jetzt, dass VBA-Code sollte zuerst die Zelle A1 überprüfen ausführen, wenn es Fehler dann gehe zu Zelle A2 bekam und so weiter ...

Und noch ein wenn VBA-Code kann nur auf Zelle A1 Ebene auszuführen, dann gibt es keine Notwendigkeit zum nächsten Zellen ausführen A2 oder A3. Jetzt führt die Codierung, die ich geschrieben habe, alle drei aus.

Können Sie mir helfen, den Code zu schreiben, die an Zelle A1 , wenn A1 ausführen wird dann zu A2 gehen ausfällt. Wenn die Zelle A2 erfolgreich ausgeführt werden kann, sollte sie nicht zum Codieren in Zelle A3 ausgeführt werden. Der Code sollte bei Zelle A2 stoppen.

Wenn bei A2 Zelle fehlschlägt, dann sollte es für Zelle versuchen A3.

Bitte helfen Sie mir, ich war nicht in der Lage, die Logik zu bekommen, wie man einen Code im obigen Szenario schreibt.

+1

ernst? schnellstmöglich ? –

+0

sollten Sie dies überprüfen http://meta.stackexchange.com/questions/80538/how-to-ask-questions-on-stack-overflow –

Antwort

0

Dies könnte Ihnen helfen, herauszufinden, wie Sie einen Fehler erhalten. Ich denke, Sie können herausfinden, wie Sie die if Anweisungen selbst arrangieren.

On Error Resume Next 
    ActiveWorkbook.FollowHyperlink "c:\aaa" 
    If Err.Number > 0 Then 
     Err.Clear 
     MsgBox "there was an error" 
     'an error occured, try next link 
    End If 
On Error GoTo 0