Option Explicit
' Declarations for VISA.DLL
' Basic I/O Operations
Private Declare Function viOpenDefaultRM Lib "VISA32.DLL" Alias "#141" (sesn As Long) As Long
Private Declare Function viOpen Lib "VISA32.DLL" Alias "#131" (ByVal sesn As Long, _
ByVal desc As String, ByVal mode As Long, ByVal TimeOut As Long, vi As Long) As Long
Private Declare Function viClose Lib "VISA32.DLL" Alias "#132" (ByVal vi As Long) As Long
Private Declare Function viRead Lib "VISA32.DLL" Alias "#256" (ByVal vi As Long, _
ByVal Buffer As String, ByVal Count As Long, retCount As Long) As Long
Private Declare Function viWrite Lib "VISA32.DLL" Alias "#257" (ByVal vi As Long, _
ByVal Buffer As String, ByVal Count As Long, retCount As Long) As Long
Sub VISALV_COM23()
On Error GoTo ErrAllgemein
Debug.Print "Start"
Dim s As String
Dim status, defaultRM, in_str, writeCount, retCount
s = "?TE" & Chr$(13)
status = viOpenDefaultRM(defaultRM)
Debug.Print "VISA open: " & status & " Handle: " & defaultRM
status = viOpen(defaultRM, "ASRL23::INSTR", 0, 5000, in_str)
Debug.Print "VISA_Gerät open: " & status & " Handle: " & in_str
status = viWrite(in_str, s, Len(s), writeCount)
status = viRead(in_str, s, 100, retCount)
Debug.Print "String: " & s & "Count: " & retCount
status = viClose(in_str)
status = viClose(defaultRM)
Debug.Print "Finished"
Exit Sub
ErrAllgemein:
Debug.Print Err.Description
End Sub