Quite a few new features in this release:

  1. A new Data Sources dialog is now available for XL-Connector Personal Edition and Team Player users making it easier to see and manage connections to Salesforce within a single workbook:
  2. Total Rows option is now supported in Data Tables. Starting from this version, if you have a Totals row in your data table – it will not be wiped out on refresh even if the number of rows in the table changes:
  3. You can now disconnect a data source from a Flow Step if you are using XL-Connector Enterprise Admin:
  4. You can now execute anonymous Apex code from inside of a Flow Step:

    You can dynamically substitute parts of Apex code based on values form your spreadsheet using the {[<RangeName>]} syntax. The following options are available:
    {[@Tablename[ColumnName]]} –  will be replaced with a correctly formatted list of values in the specified Data Table column, e.g. (‘value1’, ‘value2’, ‘value3’, ‘etc.’)
    – 
    {[NamedRange]} – if the named range points to a single cell, the expression will be replaced with the contents of this cell. If the named range points to multiple cells – the expression will be replaced with a correctly formatted list of values from that range, e.g. (‘value1’, ‘value2’, ‘value3’, ‘etc.’)
    – {[A1]} – will be replaced with the content of the A1 cell
    – {[A2:A10]} – will be replaced with a correctly formatted list of values from that range, e.g. (‘value1’, ‘value2’, ‘value3’, ‘etc.’)
  5. You can now execute anonymous Apex code from VBA too:
    Dim automationObject As Object
    Set automationObject = Application.COMAddIns("TaralexLLC.SalesforceEnabler").Object
    res = automationObject.RunApexCode("system.debug('execute anonymous apex code')")
    if not res = "success" then
       MsgBox res
    end if
  6. You can now run specific flow steps (not the whole flow) from VBA:
    Dim automationObject As Object Set automationObject = Application.COMAddIns("TaralexLLC.SalesforceEnabler").Object
    res = automationObject.RunFlowStep(Worksheets("Sheet1"), "MyFlowStepName", errorText)
    if not res = true then
       MsgBox errorText
    end if