Inputbox til registrering af prøvevægt
Jeg arbejder med et laboratorieinstrument som arbejder med VB-scripts. Jeg har nu brug for at kunne indtaste og gemme min analysevægt som består af 3 tal i en inputbox, så den bliver gemt i halen på analysenavnet(DataName). I øjeblikket bliver min analyse gemt i følgende linie: NMR.Execute("WR " & DataName & "." & Ext & " Y")Mit script ser ud som følger:
Option Explicit
Dim ListName ' Name of list file
Dim DataName ' Name of data file
'*******************************************************************
Sub Main()
Dim r
Dim Ext
Dim Current
Dim Size
If NoHardware Then
ShowError("Der er ikke forbindelse til NMR instrumentet")
Exit Sub
End If
ListName="fersklaks" ' Hent en liste fra kommandopromt
If ListName="" Then ' Kan ikke fortsætte uden listenavn i strengen
Exit Sub
End If
If LoadList1(ListName)=FALSE Then ' Indlæser listen
Exit Sub
End If
DataName=GetDataName(2) ' Får filnavn fra kommandoprompt
If DataName="" Then
Exit Sub ' Hvis der trykkes på cancel bliver input strengen tom og sub forlades,
'eller hvis filen allerede eksisterer, og der trykkes No forlades suben også.
End If
Current=NMR.GetParameter("%DATADIR") ' Hent data directory
DeleteFile (Current & DataName & "*.*") ' Slet eksisterende filer
NMR.Execute("~PMODE") ' Skift til Process mode
NMR.Execute("XY QUIT") ' Start XY display
NMR.Execute("XY")
NMR.Execute("~AMODE") ' Skift til Acquisition mode
NMR.Execute("LOAD CPMG") ' indlæs CPMG sekvens
NMR.Execute("RAP testuco")
Ext=1 ' Reset fil extension
Do While NextList1(r) ' Henter næste værdi fra listen
NMR.Execute("~AMODE") ' Skift til Acquisition Mode
NMR.Execute("TAU " & r) ' angiver tauværdien
NMR.StatusMessage("Tau = " & r )
NMR.Go ' Start program og opsaml data
NMR.Execute("Even")
NMR.Execute("WR " & DataName & "." & Ext & " Y") ' Gemmer data i fil
Ext=Ext+1 ' Ny extension
NMR.Execute("SIZE 20") ' Får størrelsen på Echoet og opdaterer XY grafen
Size=NMR.ReturnValue
NMR.Execute("XY DATA " & r & Size)
Loop
NMR.Execute("XY QUIT")
Dim Svar
Svar = Msgbox ("Analysen er færdig, vil du fortsætte",vbYesNo+vbQuestion,"Fortsæt måling?")
If Svar = 6 Then
Dim NewO1
Msgbox "Indsæt olieprøve"
NewO1=DoAutoO1
If Argv(1)<>"QUIET" Then
Show("O1 set to " & NewO1)
End If
Exit Sub
End If
End Sub