Instantaneous cell values from a PLC

B

Bill

I am running excell 2003 and have an analog input value from an Allen Bradley
control logix PLC giving a cell an instantaneous value of the input, I was
wondering if there was a way of saving the values in that cell, so I can set
up a trend of the values.I have tried to send the values to another
spreadsheet on a time basis, but have had no luck.
 
J

Jim Cone

Code goes in the sheet module.
Name a blank sheet in the same workbook "LogSheet".
Change C5 to the correct cell.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target(1, 1).Address = "$C$5" Then
With Worksheets("LogSheet")
.Cells(.Rows.Count, 1).End(xlUp)(2, 1).Value = Target(1, 1).Value
End With
End If
End Sub
--
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware



"Bill" <[email protected]>
wrote in message
I am running excell 2003 and have an analog input value from an Allen Bradley
control logix PLC giving a cell an instantaneous value of the input, I was
wondering if there was a way of saving the values in that cell, so I can set
up a trend of the values.I have tried to send the values to another
spreadsheet on a time basis, but have had no luck.
 
B

Bill

I have installed the code in the Sheet1 Objects, and still I have no tag
values comming up in the LogSheet, is there a setting or something that may
be preventing vba from moving the changing value?
 
J

Jim Cone

Change the cell designation in the code to another cell;
enter some data in that cell; see if the change is logged.
( the dollar signs($) are required in the cell address)

If not, run this sub and try again...
Sub MakeItRight
Application.EnableEvents = True
End Sub
--
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware


"Bill" <[email protected]>
wrote in message
I have installed the code in the Sheet1 Objects, and still I have no tag
values comming up in the LogSheet, is there a setting or something that may
be preventing vba from moving the changing value?
 
J

Jon Peltier

If that's a DDE link, the Worksheet_Change event may not fire. To overcome
this, put a formula in another cell that links to the DDE-linked cell (just
=$C$5 will do), then put the code into the Worksheet_Calculate event
procedure.

- Jon
 
B

Bill

I still cannot get Excel to run the procedure, security settings are fine,
still will not give me the values.
 
B

Bill

Have placed it in this workbook procedure
Private Sub Worksheet_Change(ByVal Target As Range)
If Target(1, 1).Address = "$A$1" Then
With Worksheets("LogSheet")
.Cells(.Rows.Count, 1).End(xlUp)(2, 1).Value = Target(1, 1).Value
End With
End If
End Sub
 
J

Jon Peltier

I said that a _Change event might not fire, so you should use a _Calculate
event procedure. See my earlier post (5/9/07 8:41 am).

- Jon
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top