11. marts 2002 - 11:21Der er
18 kommentarer og 1 løsning
Hvordan læser jeg commporten i et regneark
Jeg kan godt læse commporten fra et normalt visual program, men det fungere ikke i min kode til excel. Nogle forslag. (Et lille program som i Excel læser commporten når der trykkes på en knap.)
Jeg er ikke helt med. Men jeg skal bruge en lille stump kode som i VBA læser fra commporten, hvor jeg har en processer som laver noget data opsamling som som kan snakke igennem commporten.
Nå her kommer den rigtige forklaring: Jeg har en processer med en fin commport og en række D/A og A/D converters, som jeg burger til at måle og styre et system. Dette funger også fint. Men jeg ønsker nu at overføre data til et regne ark automatisk. Jeg kan sagtens sende og modtage data med min processer, med VB. Men jeg kan ikke få det til at fungere i VBA. Så jeg ønsker et lille program som læser commporten I VBA.
Det er jeg ikke sikker på kan lade sig gøre i excel. alternativersom jeg ser det er: 1. brug MSWorks, her kan man oprette et kommunikationark til porte. 2. lad din VB-procedure skrive til et excelark. (det er muligt.) 3. lad din VB-procedure skrive til en tekstfil og hent denne i excel.
Jeg sidder desværre på DTU idag, men lige så snart jeg kommer til koden så smider jeg den på. Bogen ser god ud. Jeg har snakket med nogle her ude på DTU idag og de påstår at man pga sikkerheder ikke er istand til at skrive og læse fra comporten i VBA ??? Kan det være rigtigt
Synes godt om
Slettet bruger
13. marts 2002 - 22:35#15
Hvilken version af Excel drejer det sig om ? Er det seriel porten, parallel porten, RS232 interface ?
Hvis du også har MS Visual Studio installeret, kan du bruge componenten MSComm32.ocx, som er en ikke-grafisk component til kommunikation med COM porten.
Følgende er taget fra Excel Developers Mailing listen:
************************************************************************ The following routine writes data to your serial port using the mscomm32.ocx addin.
To use it you must check the "microsoft comm control 5.0" in Tools / References in the VBA editor window.
The SerialPOrt function came from this group some time ago.
In this application I use it as a phone dialer. It sends dialing strings to my modem on com3.
Public Function SerialPort(MyData As String) As String
If Port.InBufferCount Then SerialPort = Port.Input End If MsgBox "Dialed " & MyData & " Wait for modem to dial then press OK" Port.PortOpen = False Exit Function
errorproc: Select Case Err Case 8005 MsgBox "Another program is using the comms device. Close that application before trying to dial again." Case Else MsgBox "Error is number " & Err End Select Exit Function End Function
Sub testserialport() a = SerialPort(Cells(ActiveCell.Row, 4).Value & Chr(13))
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.