Exportation vers fichier excel avec BO

vialstephane Messages postés 89 Date d'inscription mercredi 29 octobre 2003 Statut Membre Dernière intervention 22 mai 2008 - 9 mai 2004 à 16:50
griffKOM Messages postés 1 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 19 juillet 2005 - 19 juil. 2005 à 10:51
Bonjour,

Je voudrais exporter les données d' une requete BO vers un fichier excel en automatique.

Je suis arrivé en modifiant la macro dans un fichier script.rep, a enregistrer sous le format PDF avec un SaveAS dans la macro.
Mais le format XLS,CSV ne passe pas !
J'aimerais savoir si quelqu'un connaitrait la commande en VBA pour exporter les données plutot que les sauvées (SaveAS).

Je vous remercie d'avance

3 réponses

alexandre563 Messages postés 1 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 9 juin 2004
9 juin 2004 à 08:50
ceci devrait t'aider...

'------------------------------ Gestion_Xls() ------------------------------
'Création des XLS
Private Sub Gestion_Xls(strFileName, IndexRefresh, IndexReport, strReturnCode)
Dim strFileNameCopie, strFileNameIntranet As String
Dim i As Integer
Dim BOCmdBar As CmdBar
Dim BOCmdBarControls As CmdBarControls
Dim BOControlButton As Control
Dim BOCmdBarPopup As CmdBarPopup
Dim BOCmdBarButton As CmdBarButton
Dim wksht As Worksheet
Dim xcl As New Excel.Application

On Error GoTo errHandler

strFileNameIntranet = strFileName & ".xls"
strFileNameCopie = gstrDirXls2(IndexRefresh) & strFileName & ".xls"
strFileName = gstrDirXls1(IndexRefresh) & strFileName & ".xls"
'Creation du XLS

xcl.Workbooks.Add
'xcl.Visible = True
'xcl.Sheets.Add
'ActiveDocument.Reports.Item(IndexReport).Activate
'Execute la commande 'copier tout' du menu 'Edition' de BO
'2nd menu et 20ème commandes
Set BOCmdBar = Application.CmdBars.Item(2)
Set BOCmdBarControls = BOCmdBar.Controls
Set BOCmdBarPopup = BOCmdBarControls.Item(2)
Set BOCmdBarButton = BOCmdBarPopup.CmdBar.Controls.Item(20)
BOCmdBarButton.Execute

xcl.Sheets(1).Select
xcl.ActiveSheet.Paste
xcl.Sheets(1).Name = ActiveDocument.Reports.Item(IndexReport).Name
'Application.Window.Activate
xcl.ActiveWorkbook.SaveAs fileName:=strFileName, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
xcl.Quit

gstrLineFileLog = " Création du XLS " & strFileName & " OK"
Call Write_Log(gstrLineFileLog)

'Copie du XLS
If (gstrDirXls2(IndexRefresh) <> "" And Not IsNull(gstrDirXls2(IndexRefresh))) Then
Call FileSystem.FileCopy(strFileName, strFileNameCopie)
gstrLineFileLog = " Copie du XLS vers " & gstrDirXls2(IndexRefresh) & " OK"
Call Write_Log(gstrLineFileLog)
End If


'xcl.Sheets(i).Columns(1).Format
'Cet exemple montre comment affecter la valeur 0 (zéro) à chaque cellule de la colonne 1 dans la plage « maPlage ».
'Range("maPlage").Columns(1).Value = 0
'Cet exemple montre comment afficher le nombre de colonnes dans la sélection de Feuil1. Si plusieurs zones sont sélectionnées, cet exemple montre comment faire une boucle sur chaque zone.
'Worksheets("Feuil1").Activate
'areaCount = Selection.Areas.Count
'If areaCount <= 1 Then
' MsgBox "La sélection contient " & _
' Selection.Columns.Count & " colonnes."
'Else
' For i = 1 To areaCount
' MsgBox "La zone " & i & " de la sélection contient " & _
' Selection.Areas(i).Columns.Count & " colonnes."
' Next i
'End If
Exit Sub

'Gestion des erreurs
errHandler:
strReturnCode = "erreur"
'On recupere l'erreur et on écrit dans fichier LOG
Call Write_Ligne_Vide_Log(gstrLineFileLog)
gstrLineFileLog = "ATTENTION ERREUR !"
Call Write_Log(gstrLineFileLog)
gstrLineFileLog = "Fonction Gestion_Xls, Source : " & err.Source & ", Numero : " & CStr(err.Number)
gstrLineFileLog = gstrLineFileLog & ", Description : " & err.Description
Call Write_Log(gstrLineFileLog)
err.Clear
gbolErreur = True
End Sub
0
vialstephane Messages postés 89 Date d'inscription mercredi 29 octobre 2003 Statut Membre Dernière intervention 22 mai 2008
11 juin 2004 à 16:20
MERCI BEAUCOUP BEAUCOUP

C NICKEL

@+
0
griffKOM Messages postés 1 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 19 juillet 2005
19 juil. 2005 à 10:51
Bonjour,

J'aurai voulu savoir s'il était pôssible de modifier le menu de BO avec les macros VB disponibles

Cordialement,

Farid....
0
Rejoignez-nous