Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2850 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Copier/coller une feuille Excel avec ACCES

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Copier/coller une feuille Excel avec ACCES

n°1353442
PAULOM
Posté le 25-04-2006 à 11:57:33  profilanswer
 

Bonjour à tous,  
voici mon problème je souhaite copier la table que j'exporte dans la feuille "SXX" dans la feuille "S0" de mon fichier excel, tout ça en VB.
 
Voici mon code:
 

Code :
  1. Option Compare Database
  2. Sub ExportTblAccessInExcel()
  3. Dim Db As DAO.Database
  4. Dim Rs As DAO.Recordset
  5. Dim Xlapp As Excel.Application
  6. Dim XlBook As Excel.Workbook
  7. Dim XlSheet As Excel.Worksheet
  8. Dim NomFeuille As String
  9. On Error GoTo errOuvrirExcel
  10. Set Xlapp = GetObject(, "Excel.Application" )
  11. 'On Error GoTo oups:
  12. On Error GoTo 0
  13. Xlapp.Visible = True
  14. NomFeuille = "S" & DatePart("ww", Date) - 1
  15. 'SemainePré = "S" & DatePart("ww", Date) - 2
  16. Set XlBook = Xlapp.Workbooks.Open("C:\Documents and Settings\A4382\Bureau\stage\Nvx_clients_par_BG_2006_S14.xls" )
  17. 'Set XlSheet = XlBook.Worksheets("S0" )
  18. 'Set XlSheet = XlBook.Worksheets("Semaine S-1" )
  19. If FeuilleExiste(NomFeuille, XlBook) Then
  20.   Set XlSheet = XlBook.Worksheets("NomFeuille" )
  21.  
  22.    ' efface les données
  23.    XlSheet.Cells.Clear
  24. Else
  25.    ' Ajouter nouvelle feuille en dernière position
  26.    Set XlSheet = XlBook.Worksheets.Add(, XlBook.Worksheets(XlBook.Worksheets.Count - 2))
  27.    XlSheet.Name = NomFeuille
  28.  
  29. End If
  30. Set Db = CurrentDb
  31. ' Copie dans feuille (nouvelle ou effacée)
  32. Set Rs = Db.OpenRecordset("T31_Cumul_Nvx_clients_par_BG", , dbOpenForwardOnly)
  33. XlSheet.Range("A1" ).CopyFromRecordset Rs
  34. Set XlSheet = Nothing
  35. ' remise au début car le 'CopyFromRecordset' ne le fait pas
  36. Rs.MoveFirst
  37. XlSheet.Range("A1" ).CopyFromRecordset Rs
  38. ' Ferme les Var
  39. Rs.Close: Set Rs = Nothing
  40. Db.Close: Set Db = Nothing
  41. Set XlSheet = Nothing
  42. ' Sauve le fichier
  43. XlBook.Save
  44. XlBook.Close
  45. Set XlBook = Nothing
  46. Set Xlapp = Nothing
  47. Exit Sub
  48. errOuvrirExcel:
  49. 'Err 429 : Un serveur OLE Automation ne peut pas créer d'objet
  50. ' -> Excel n'est PAS encore ouvert.
  51. If Err = 429 Then
  52. Set Xlapp = CreateObject("Excel.Application" )
  53. Resume Next
  54. End If
  55. oups:
  56. MsgBox Err.Number & " - " & Err.Description
  57. End Sub
  58. Function FeuilleExiste(NomFeuille As String, Classeur As Excel.Workbook) As Boolean
  59. Dim errNum As Long, strName As String
  60.   errNum = 0: Err.Clear
  61.    On Error Resume Next
  62.    strName = Classeur.Worksheets(NomFeuille).Name
  63.    errNum = Err.Number
  64.    On Error GoTo 0
  65.    If errNum = 0 Then FeuilleExiste = True Else FeuilleExiste = False
  66. End Function


Message édité par PAULOM le 25-04-2006 à 12:01:04
mood
Publicité
Posté le 25-04-2006 à 11:57:33  profilanswer
 

n°1353659
tegu
Posté le 25-04-2006 à 15:23:54  profilanswer
 

Tout cela est très bien, mais tu n'as fait qu'exposer ton objectif. Quel est ton problème ?

n°1353697
PAULOM
Posté le 25-04-2006 à 15:59:07  profilanswer
 

Mon probleme est que je n'arrive pas comment copier une feuille excel par l'intermédiaire de VB...
 
En gros je veux que 2 feuilles de mon fichier Excel aient les memes données sous un nom différent.

n°1353793
kiki29
Posté le 25-04-2006 à 17:31:32  profilanswer
 

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Copier/coller une feuille Excel avec ACCES

 

Sujets relatifs
filtre excel avec un nombre de critères superieure à 2Acces aux informations ACPI
créer un macro excel qui écrit une chaine de caractère dans DOSFormat date dans textbox malgrès différente version d'Excel
Comparer des cellules sous Excelacces site
conception de macro sur excelmatrices avec classes vba/excel
lire des données d'une base de donnée avec excellire un fichier excel à l'aide de perl
Plus de sujets relatifs à : Copier/coller une feuille Excel avec ACCES


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR