Bonjour,


Après avoir essayé plusieurs solutions et plusieurs syntaxes, je tourne en rond.
Je souhaite récupérer des données dans une base sql express et alimenter un fichier excel avec du vb.net. J'ai systématiquement des erreurs.

Voici la dernière version testée:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Dim vTab As Excel.Worksheet
Dim vSql as String
 
vTab = vWorkbook.Sheets("Test")
vSql = "SELECT Client.Nom, Client.Prenom FROM Client"
 
With vTab.QueryTables.Add(Connection:="OLEDB;Provider=SQLOLEDB;Data Source=.\SQLEXPRESS;AttachDbFilename=C:\WWW\VS2010\Test\App_Data\Client.mdf;Integrated Security=True;User Instance=True", Destination:=vTab.Range("A5"))
  .CommandText = vlSql
  .Name = vTab.Name
  .FieldNames = True
  .RowNumbers = True
  .FillAdjacentFormulas = False
  .PreserveFormatting = True
  .RefreshOnFileOpen = False
  .BackgroundQuery = True
  .RefreshStyle = Excel.XlCellInsertionMode.xlOverwriteCells
  .SavePassword = False
  .SaveData = False
  .AdjustColumnWidth = True
  .RefreshPeriod = 0
  .PreserveColumnInfo = True
  .Refresh(BackgroundQuery:=True)
End With
A l'exécution, j'ai systématiquement une erreur sur la ligne .Refresh
Exception from HRESULT: 0x800A03EC
J'ai trouvé plusieurs sujets similaires mais rien ne m'a permis de résoudre le probleme pour le moment.

Merci de m'aider.