| 2.5.4 DataFormat
 DescriptionSetting and getting a column's data format type to one of the supported COLDATAFORMAT types. Setting a column's data format will erase any data in the column unlike the similar action performed from Origin's Column Property dialog.
 Syntax
VB: Property Get/Let DataFormat As COLDATAFORMAT
C++: COLDATAFORMAT DataFormat
C#: COLDATAFORMAT DataFormat
RemarkThis property is changed in Origin 8 SR2. Previously you needed to set this property and the InternalDataType property (removed in SR2) to set a column's data type. This is now combined with this single property.
 ExamplesVBA to Send BYTE data to Origin and Get them BackSending BYTE (1 byte integer) data to Origin Column, and getting data back
 Public Sub SetDataFormat()
    Dim app As Origin.ApplicationSI
    Dim Wks As Origin.Worksheet
    Dim ii As Integer
    Dim data As Variant
    Dim send(1 To 100) As Byte
    For ii = 1 To 100
        send(ii) = ii
    Next
    Set app = New Origin.ApplicationSI
    Set Wks = app.FindWorksheet("")
    Wks.Columns(0).DataFormat = DF_BYTE
    Wks.Columns(0).SetData (send)
    data = Wks.Columns(0).GetData(ARRAY1D_NUMERIC, 0, -1)
    Range("A1") = data(0)
End SubVBA to Send Text Array to Origin and Getting BackSending Text array to Origin Column, and getting data back
 Public Sub SetDataFormat()
    Dim app As Origin.ApplicationSI
    Dim Wks As Origin.Worksheet
    Dim ii As Integer
    Dim data As Variant
    Dim send(1 To 100) As String
    For ii = 1 To 100
        send(ii) = Str (ii)
    Next
    Set app = New Origin.ApplicationSI
    Set Wks = app.FindWorksheet("")
    Wks.Columns(1).DataFormat = DF_TEXT
    Wks.Columns(1).SetData (send)
    data = Wks.Columns(1).GetData(ARRAY1D_VARIANT, 0, -1)
    Range("A1") = data(0)
End SubC#Sending BYTE data to Origin Column, and getting data back
 Using Origin;
static void SetDataFormat()
{
    byte[] send = new byte[100];
    for (byte ii = 0; ii < 100; ii++)
    {
        send[ii] = ii;
    }
    Origin.ApplicationSI app = new Origin.ApplicationSI();
    Worksheet wks = app.FindWorksheet("");
    wks.Columns[0].DataFormat = COLDATAFORMAT.DF_BYTE;
    wks.Columns[0].SetData(send, 0);
    object data = wks.Columns[0].GetData(ARRAYDATAFORMAT.ARRAY1D_NUMERIC, 0, -1, 0);
    send = data as byte[];
    Console.WriteLine(send[0] + "\n");
}C#Sending Text array to Origin Column, and getting data back
 Using Origin;
static void SetDataFormat()
{
    string[] send = new string[100];
    for (int ii = 0; ii < 100; ii++)
    {
        send[ii] = ii.ToString();
    }
    Origin.ApplicationSI app = new Origin.ApplicationSI();
    Worksheet wks = app.FindWorksheet("");
    wks.Columns[1].DataFormat = COLDATAFORMAT.DF_TEXT;
    wks.Columns[1].SetData(send, 0);
    object data = wks.Columns[0].GetData(ARRAYDATAFORMAT.ARRAY1D_NUMERIC, 0, -1, 0);
    send = data as string[];
    Console.WriteLine(send[0] + "\n");
}Version Information8.0SR2
 See AlsoSetData
 |