Bonjour,
Je viens de télecharger ce projet et ça marche bien
uniquement si le nombre des colonnes de la table Access à exporter est <26(colonnes de A à Z en excel)
si le nombre >=26 ça donne une erreur d'exécution.(puise que le code ascii de AA est différent de ascii(91).
j'ai modifié le code comme suivant :
With obj.ActiveWorkbook.Worksheets("Feuil1")
'LIGNE DES NOMS DE CHAMPS
While i <= mytable.Columns.Count - 1
Set mycolumn = mytable.Columns(i)
var = ascii + i
If var < 91 Then
lib = Chr(var) & "1"
.Range(lib) = mycolumn.Name
colonnes(i) = mycolumn.Name
i = i + 1
Else
lib = "A" & Chr(ascii + i - 26) & "1"
.Range(lib) = mycolumn.Name
colonnes(i) = mycolumn.Name
i = i + 1
End If
.Range(lib).Font.Bold = True
ReDim Preserve colonnes(i)
Wend
'CONTENU
myrc.Open mytable.Name, myconnection, adOpenDynamic, adLockPessimistic
If Not myrc.BOF Then myrc.MoveFirst
'myrc.MoveFirst
cu_ligne = 2
mymax = UBound(colonnes) - 1
While Not myrc.EOF
For i = 0 To mymax
var = ascii + i
If var < 91 Then
lib = Chr(ascii + i) & Trim(Str(cu_ligne))
.Range(lib) = "" & myrc(colonnes(i))
Else
lib = "A" & Chr(ascii + i - 26) & Trim(Str(cu_ligne))
.Range(lib) = "" & myrc(colonnes(i))
End If
Next
cu_ligne = cu_ligne + 1
myrc.MoveNext
Wend
End With
ca marche bien pour l'exportation, le seul problème c qu'il ne commence pas avec le premier champ de la table access (code par exemple), si quelqu'un peux m'aider je le serai reconnaissante.
vraiment ce code il m 'a aidie bcp et je te suite une bonne chance une 2 eme fois merci
Je viens de télecharger ce projet et ça marche bien
uniquement si le nombre des colonnes de la table Access à exporter est <26(colonnes de A à Z en excel)
si le nombre >=26 ça donne une erreur d'exécution.(puise que le code ascii de AA est différent de ascii(91).
j'ai modifié le code comme suivant :
With obj.ActiveWorkbook.Worksheets("Feuil1")
'LIGNE DES NOMS DE CHAMPS
While i <= mytable.Columns.Count - 1
Set mycolumn = mytable.Columns(i)
var = ascii + i
If var < 91 Then
lib = Chr(var) & "1"
.Range(lib) = mycolumn.Name
colonnes(i) = mycolumn.Name
i = i + 1
Else
lib = "A" & Chr(ascii + i - 26) & "1"
.Range(lib) = mycolumn.Name
colonnes(i) = mycolumn.Name
i = i + 1
End If
.Range(lib).Font.Bold = True
ReDim Preserve colonnes(i)
Wend
'CONTENU
myrc.Open mytable.Name, myconnection, adOpenDynamic, adLockPessimistic
If Not myrc.BOF Then myrc.MoveFirst
'myrc.MoveFirst
cu_ligne = 2
mymax = UBound(colonnes) - 1
While Not myrc.EOF
For i = 0 To mymax
var = ascii + i
If var < 91 Then
lib = Chr(ascii + i) & Trim(Str(cu_ligne))
.Range(lib) = "" & myrc(colonnes(i))
Else
lib = "A" & Chr(ascii + i - 26) & Trim(Str(cu_ligne))
.Range(lib) = "" & myrc(colonnes(i))
End If
Next
cu_ligne = cu_ligne + 1
myrc.MoveNext
Wend
End With
ca marche bien pour l'exportation, le seul problème c qu'il ne commence pas avec le premier champ de la table access (code par exemple), si quelqu'un peux m'aider je le serai reconnaissante.
je pense qu'il faut ajouter ces deux references :
Microsoft ADO Ext.2.8 for DDL and security
Microsoft Activex Data Objects 2.0 library
Menu/projet/references
bonne chance
Type défini par l'utilisateur non défini
qu'est ce que je dois faire SVP?!
La source est bonne et m'a beaucoup aidé , si tu peux l'ameliorer , elle sera encore plus bonne , courage et merc pour tout.
A bientöt
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.