Ready to get started?

Learn more about the CData Excel Add-In for SFTP or download a free trial:

Download Now

Excel Spreadsheet Automation with the QUERY Formula

Pull data, automate spreadsheets, and more with the QUERY formula.

The CData Excel Add-In for SFTP provides formulas that can edit, save, and delete SFTP data. The following three steps show how you can automate the following task: Search SFTP data for a user-specified value and then organize the results into an Excel spreadsheet.

The syntax of the CDATAQUERY formula is the following: =CDATAQUERY(Query, [Connection], [Parameters], [ResultLocation]);

This formula requires three inputs:

  • Query: The declaration of the SFTP data records you want to retrieve or the modifications to be made, written in standard SQL.
  • Connection: Either the connection name, such as SFTPConnection1, or a connection string. The connection string consists of the required properties for connecting to SFTP data, separated by semicolons.

    SFTP can be used to transfer files to and from SFTP servers using the SFTP Protocol. To connect, specify the RemoteHost;. service uses the User and Password and public key authentication (SSHClientCert). Choose an SSHAuthMode and specify connection values based on your selection.

    Set the following connection properties to control the relational view of the file system:

    • RemotePath: Set this to the current working directory.
    • TableDepth: Set this to control the depth of subfolders to report as views.
    • FileRetrievalDepth: Set this to retrieve files recursively and list them in the Root table.
    Stored Procedures are available to download files, upload files, and send protocol commands. See gdatamodel for more on using SQL to interact with the server.

  • ResultLocation: The cell that the output of results should start from.

Pass Spreadsheet Cells as Inputs to the Query

The procedure below results in a spreadsheet that organizes all the formula inputs in the first column.

  1. Define cells for the formula inputs. In addition to the connection inputs, add another input to define a criterion for a filter to be used to search SFTP data, such as FilePath.
  2. In another cell, write the formula, referencing the cell values from the user input cells defined above. Single quotes are used to enclose values such as addresses that may contain spaces.
  3. =CDATAQUERY("SELECT * FROM MyDirectory WHERE FilePath = '"&B2&"'","RemoteHost="&B1&";Provider=SFTP",B3)
  4. Change the filter to change the data.