Public Function MaxComPort() As Integer
On Error GoTo Err_Chk
Dim i1 As Integer, iCanal As Integer
For i1 = 1 To 16
iCanal = FreeFile
Open "COM" & i1 For Binary As #iCanal
Close #iCanal
Next i1
Exit_Chk:
On Error Resume Next
Close #iCanal
MaxComPort = i1
Exit Function
Err_Chk:
If Err.Number = 53 Then ' (53 el archivo no existe)
i1 = i1 - 1
Resume Exit_Chk
Else
MsgBox Err.Description
End If
End Function