Du hast ja schon If im einsatz? Wo liegt das Problem?
Ich weiss ja nicht was du machen willst, falls es kein avi ist. Fehlermeldung? einfach nix? Weiter unten in deinem Code fortfahren?
Also, spielen wir mal Erklärbär. Dazu habe ich aus deinem Code alles Sinnlose rausgelöscht und die *.avi-Bedinnung reingenommen
Visual Basic:
Private Sub mnuAVI_Click()
Dim Sound As String
Dim pfad As String
pfad = Datei1.FileName
If pfad = vbNullString OR Right(pfad, 3) = "avi" Then
MsgBox(" Erst AVI Datei wählen", 320, "Fehler")
Else
frmAVI.Show
End If
End Sub
Nun zu den Detail.
Visual Basic:
Sound$ = Datei1.Path + "\" + pfad
If Sound$ > "" Then frmAVI.Show
Diese Codeabschnitt brungt nicht viel. Zuerst erstellst du einen Stringaus dem Pfad und und fügst ihm ein "\" hinzu. Damit hast du im Minimum einen String "\"
In der nächsten Zeile prüfst du, ob der String leer ist. Kann er nie sein, weil er ja mindestens "\" beinhaltet.
Somit brauchen wir Sound für gar nix.
Visual Basic:
If pfad = "" Then OK% = MsgBox(" Erst AVI Datei wählen", 320, "Fehler")
If pfad = "" Then Exit Sub
Hier prüfst du zweimal das gleiche. Das kann man besser in einen If-EndIf-Block setzen.
Die Variabl OK wird nie ausgewertet. Aslo kann man sie auch weglassen und die Antwort der MsgBox unter den Tisch spühlen. Das OK brauchen wir also auch nicht.
Was habe ich selber nun reingetan?
Visual Basic:
If pfad = vbNullString OR Right(pfad, 3) = "avi" Then
...
END IF
Ich habe die "" durch vbNullString ersetzt. Dies ist eine Konstante von VB6 und ist das gleiche wie "", aber es ist sauberer programmiert.
Dan habe ich die Prüfung auf avi hinzugefügt. Right() nimm mir eine gewisse Anzahl Zeichen eines String von Rechts her gesehen. In unserem Fall die letzten 3 Zeichen des Dateinamens. Diese vergleiche ich mit dem String "avi".
IF THEN
ELSE
END IF
Dieses Konstrukt bitte selber googeln. Das ist das Ein mal Eins jeder Programmierung.
Abschliessend:
Ich weiss nicht woher Datei1.FileName und was frmAVI.Show macht. Wenns da Knallt, können wir dir anhand des von dir geposteten Codes nicht helfen.