These macros are useful for automatically transmitting data from Excel into the Cascade DataHub.
---------------------------------------------------
Sub Worksheet_Change(ByVal Target As Range)
Dim rname As String
Dim channel As Variant
On Error Resume Next
rname = Target.name.name
If Not rname = "" Then
channel = DDEInitiate("datahub", "default")
DDEPoke channel, rname, Target
DDETerminate (channel)
End If
End Sub
------------------------------------------------------------------------------------------------------
Function NameOfParentRange(Rng As Range) As String
Dim Nm As Name
For Each Nm In ThisWorkbook.Names
If Rng.Parent.Name = Nm.RefersToRange.Parent.Name Then
If Not Application.Intersect(Rng, Nm.RefersToRange) Is Nothing Then
NameOfParentRange = Nm.Name
Exit Function
End If
End If
Next Nm
NameOfParentRange = ""
End Function
------------------------------------------------------------------------------------------------------
Sub Worksheet_Change(ByVal r As Range)
Dim pname As String
Dim chan As Integer
pname = ThisWorkbook.NameOfParentRange(r)
If Not pname = "" Then
On Error Resume Next
chan = DDEInitiate("datahub", "default")
DDEPoke chan, pname, Worksheets("Sheet1").Range(pname)
DDETerminate (chan)
End If
End Sub
---------------------------------------------------Copyright © 1995-2006 by Cogent Real-Time Systems, Inc. All rights reserved.