extraire les documents selectionnés d'une vue vers excel
Bonjour
J'ai fais un code pour extraire tous les documents d'un vue vers excel
Cependant je voudrais maintenant l'adapter pour qu'il ne m'extrait que les documents selectionnés de ma vue.
Pourriez vous m'aidez s'il vous plait
Voici mon code actuel
Option Public
Sub Initialize
Dim Session As New NotesSession
Dim db As NotesDatabase
Dim dataview As NotesView
Dim vwNav As NotesViewNavigator
Dim XLApp As Variant
Dim XLWorkBook As Variant
Dim ActiveWorkBook As Variant
Dim Sheet As Variant
Dim ligne As Long
Dim colonne As Long
Dim K As Variant
Dim Nbcolonne As Integer
Dim c As NotesViewColumn
Dim XlSheet As Variant
Dim entry As NotesViewEntry
Dim colvals As Variant
Dim scope As String
Dim doc As NotesDocument
On Error GoTo Erreur
' Initialisation de la session, base actuelle et vue
Set session = New NotesSession
Set db = session.CurrentDatabase
Set dataview = db.GetView("Nom de ma vue") 'SPECIFIER ICI LE NOM DE LA VUE
Set vwNav=dataview.CreateViewNav
' initialisation de l'objet OLE ou Instance OLE
' ouverture de l'application Excel sans ouverture de classeur
Set XLApp = CreateObject("Excel.Application")
XLApp.Visible = False
XLApp.DisplayAlerts = False
Set XLWorkBook=XLApp.Workbooks.Add
Set ActiveWorkBook=XLApp.ActiveWorkBook
Set Sheet=ActiveWorkBook.ActiveSheet
Sheet.Name = "NomFeuille" ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''NOM DE LA FEUILLE
'1. Ecriture du titre des colonnes
Nbcolonne=dataview.ColumnCount ' Récupère le nombre de colonne de la vue
ligne=1 ' On se place sur la première ligne
colonne=1
Set XlSheet=CreateObject("Excel.Sheet")
For K=1 To Nbcolonne
Set c=dataview.columns(K-1)
Sheet.Cells(ligne,colonne) = c.title
colonne = colonne + 1
Next K
Set entry=vwnav.GetFirstDocument
'Stop
'2. Renseigne les valeures des champs du document
ligne=2 ' On se place sur la deuxième ligne
colonne=1 'On se remet sur la premiere colonne
Do While Not (entry Is Nothing)
For colonne=1 To Nbcolonne
colvals=entry.ColumnValues(colonne-1)
scope=TypeName(colvals)
Select Case scope
Case "EMPTY"
Sheet.Cells(ligne,colonne) =""
Case "STRING( )"
Sheet.Cells(ligne,colonne) =""
Case Else
Sheet.Cells(ligne,colonne) ="" + colvals
End Select
Next colonne
ligne=ligne+1
Set entry = vwnav.getnextdocument(entry)
Loop ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''COPIE TOUTS LES VALEURS DE LA VUE
Exit Sub
Erreur:
XLApp.Quit
Stop
MsgBox "PROBLEME PENDANT L'EXTRACTION DE " & "( Ligne : " & ligne-1 & " Colonne : " & colonne-1 & " )",16," ERREUR !"
Resume Fin
Fin:
End Sub
J'ai fais un code pour extraire tous les documents d'un vue vers excel
Cependant je voudrais maintenant l'adapter pour qu'il ne m'extrait que les documents selectionnés de ma vue.
Pourriez vous m'aidez s'il vous plait
Voici mon code actuel
Option Public
Sub Initialize
Dim Session As New NotesSession
Dim db As NotesDatabase
Dim dataview As NotesView
Dim vwNav As NotesViewNavigator
Dim XLApp As Variant
Dim XLWorkBook As Variant
Dim ActiveWorkBook As Variant
Dim Sheet As Variant
Dim ligne As Long
Dim colonne As Long
Dim K As Variant
Dim Nbcolonne As Integer
Dim c As NotesViewColumn
Dim XlSheet As Variant
Dim entry As NotesViewEntry
Dim colvals As Variant
Dim scope As String
Dim doc As NotesDocument
On Error GoTo Erreur
' Initialisation de la session, base actuelle et vue
Set session = New NotesSession
Set db = session.CurrentDatabase
Set dataview = db.GetView("Nom de ma vue") 'SPECIFIER ICI LE NOM DE LA VUE
Set vwNav=dataview.CreateViewNav
' initialisation de l'objet OLE ou Instance OLE
' ouverture de l'application Excel sans ouverture de classeur
Set XLApp = CreateObject("Excel.Application")
XLApp.Visible = False
XLApp.DisplayAlerts = False
Set XLWorkBook=XLApp.Workbooks.Add
Set ActiveWorkBook=XLApp.ActiveWorkBook
Set Sheet=ActiveWorkBook.ActiveSheet
Sheet.Name = "NomFeuille" ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''NOM DE LA FEUILLE
'1. Ecriture du titre des colonnes
Nbcolonne=dataview.ColumnCount ' Récupère le nombre de colonne de la vue
ligne=1 ' On se place sur la première ligne
colonne=1
Set XlSheet=CreateObject("Excel.Sheet")
For K=1 To Nbcolonne
Set c=dataview.columns(K-1)
Sheet.Cells(ligne,colonne) = c.title
colonne = colonne + 1
Next K
Set entry=vwnav.GetFirstDocument
'Stop
'2. Renseigne les valeures des champs du document
ligne=2 ' On se place sur la deuxième ligne
colonne=1 'On se remet sur la premiere colonne
Do While Not (entry Is Nothing)
For colonne=1 To Nbcolonne
colvals=entry.ColumnValues(colonne-1)
scope=TypeName(colvals)
Select Case scope
Case "EMPTY"
Sheet.Cells(ligne,colonne) =""
Case "STRING( )"
Sheet.Cells(ligne,colonne) =""
Case Else
Sheet.Cells(ligne,colonne) ="" + colvals
End Select
Next colonne
ligne=ligne+1
Set entry = vwnav.getnextdocument(entry)
Loop ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''COPIE TOUTS LES VALEURS DE LA VUE
Exit Sub
Erreur:
XLApp.Quit
Stop
MsgBox "PROBLEME PENDANT L'EXTRACTION DE " & "( Ligne : " & ligne-1 & " Colonne : " & colonne-1 & " )",16," ERREUR !"
Resume Fin
Fin:
End Sub