Sub psql()
    Dim cmd, oExec, ws, nrow, cols
    
    cmd = Range("C2").Value & _
        " -h " & Range("C3").Value & _
        " -p " & Range("C4").Value & _
        " -d " & Range("C5").Value & _
        " -U " & Range("C6").Value & _
        " -c """ & Range("C7").Value & """ -A"
    
    Set oExec = CreateObject("Wscript.Shell").Exec(cmd)
    Set ws = Worksheets.Add
    nrow = 1
    While Not oExec.StdOut.AtEndOfStream

        cols = Split(oExec.StdOut.ReadLine, "|")
        For i = LBound(cols) To UBound(cols)
            ws.Cells(nrow, i + 1).Value = cols(i)
        Next i
        nrow = nrow + 1

    Wend
    Set oExec = Nothing
End Sub