- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
保存文件
概述
在Excel VBA中的样本程序
在HT Basic中的样本程序
概述
该样本程序说明如何保存文件。这个程序保存指定名的文件的选定内容。
参见这个程序的保存和调用文件。
在Excel VBA中的样本程序
Sub File_Save()
' Declare two string variables for file name and file type
Dim File_Name As String
Dim File_Type As String
Dim defrm As Long
Dim vi As Long
Const TimeOutTime = 10000
' Check whether file name textbox is empty or not
If TextBox1.Text <> "" Then
File_Name = Trim(TextBox1.Text)
File_Type = Trim(frmFileSave.ComboBox1.Value)
' Open connection to the E5071C
Call viOpenDefaultRM(defrm)
Call viOpen(defrm, "GPIB0::18::INSTR", 0, 0, vi)
Call viSetAttribute(vi, VI_ATTR_TMO_VALUE, TimeOutTime)
Select Case File_Type
Case "1: State (State only)"
Call viVPrintf(vi, ":MMEM:STOR:STYP STAT" + vbLf, 0)
Call viVPrintf(vi, ":MMEM:STOR """ & File_Name & ".sta""" + vbLf, 0)
Case "2: State (State & Cal)"
Call viVPrintf(vi, ":MMEM:STOR:STYP CST" + vbLf, 0)
Call viVPrintf(vi, ":MMEM:STOR """ & File_Name & ".sta""" + vbLf, 0)
Case "3: State (State & Trace)"
Call viVPrintf(vi, ":MMEM:STOR:STYP DST" + vbLf, 0)
Call viVPrintf(vi, ":MMEM:STOR """ & File_Name & ".sta""" + vbLf, 0)
Case "4: State (State & Cal & Trace)"
Call viVPrintf(vi, ":MMEM:STOR:STYP CDST" + vbLf, 0)
Call viVPrintf(vi, ":MMEM:STOR """ & File_Name & ".sta""" + vbLf, 0)
Case "5: State (Trace Data (CSV))"
Call viVPrintf(vi, ":MMEM:STOR:FDAT """ & File_Name & ".csv""" + vbLf, 0)
Case "6: State (Screen)"
Call viVPrintf(vi, ":MMEM:STOR:IMAG """ & File_Name & ".bmp""" + vbLf, 0)
Case Else
msgbox "Error in code"
End Select
Call viClose(defrm)
Else
msgbox "Please enter a filename"
End If
End Sub
在HT Basic中的样本程序(file_sav.htb)
10 DIM File$[300],Inp_char$[30]
20 INTEGER Content
30 CLEAR SCREEN
40 ASSIGN @Agte507x TO 717
50 !
60 ON ERROR GOTO Content_select
70 Content_select: !
80 PRINT "## Save Content Selection ##"
90 PRINT "Select Content"
100 PRINT " 1: State (State only)"
110 PRINT " 2: State (State & Cal)"
120 PRINT " 3: State (State & Trace)"
130 PRINT " 4: State (State & Cal & Trace)"
140 PRINT " 5: Trace Data (CSV)"
150 PRINT " 6: Screen"
160 PRINT ""
170 PRINT "Input 1 to 6"
180 INPUT "Number?",Inp_char$
190 Content=IVAL(Inp_char$,10)
200 IF Content<1 OR Content>6 THEN Content_select
210 OFF ERROR
220 !
230 CALL Inp_file_name(File$)
240 !
250 SELECT Content
260 CASE 1
270 OUTPUT @Agte507x;":MMEM:STOR:STYP STAT"
280 OUTPUT @Agte507x;":MMEM:STOR """&File$&".sta"""
290 CASE 2
300 OUTPUT @Agte507x;":MMEM:STOR:STYP CST"
310 OUTPUT @Agte507x;":MMEM:STOR """&File$&".sta"""
320 CASE 3
330 OUTPUT @Agte507x;":MMEM:STOR:STYP DST"
340 OUTPUT @Agte507x;":MMEM:STOR """&File$&".sta"""
350 CASE 4
360 OUTPUT @Agte507x;":MMEM:STOR:STYP CDST"
370 OUTPUT @Agte507x;":MMEM:STOR """&File$&".sta"""
380 CASE 5
390 OUTPUT @Agte507x;":MMEM:STOR:FDAT """&File$&".csv"""
400 CASE 6
410 OUTPUT @Agte507x;":MMEM:STOR:IMAG """&File$&".bmp"""
420 END SELECT
430 !
440 END
450 !=============================================
460 ! File Name Input Function
470 !=============================================
480 SUB Inp_file_name(Inp_name$)
490 DIM Inp_char$[9]
500 ON ERROR GOTO Inp_start
510 Inp_start: !
520 PRINT "## File Name Input ##"
530 PRINT "Input Save File Name (without Extension)"
540 INPUT "Name?",Inp_name$
550 PRINT "Input Name: "&Inp_name$
560 INPUT "OK? [Y/N]",Inp_char$
570 IF UPC$(Inp_char$)<>"Y" THEN Inp_start
580 OFF ERROR
590 SUBEND