Ma base de donnée avance bien grâce à vous tous et c'est vraiment génial!
ma difficulté de cette fin d'après midi est de pouvoir imprimer les lignes sélectionnées dans un Lisview.
Ma listview tient la route (enfin!) j'extrait les colonnes qui m'intéressent.
une colonne cachée comporte la numération..
je peux sélectionner plusieurs lignes (elles se mettent en surbrillance bleu).
ce que je voudrais maintenant c'est imprimer uniquement les données des lignes qui seront sélectionnées.
J'ai fait le tour des posts sur le Forum .. j'ai pas trouvé mon bonheur , si j'ai bien compris il faut transférer les lignes vers une page qui servira pour l'impression, j'ai essayé un tas de code ... pas moyen le dernier trouvé à l'air sympa, mais plante sur la ligne:
Je ne comprends pas ce qui ce passe quelq'un pourrait m'éclairer?
autre chose: est-il possible de lancer "automatiquement" l'impression sans que l'utilisateur aille dans la feuille crée? (les pages du classeur seront cachées) risque de mauvaise définition de zone d'impression ou de passer une ramette entière de papier?
Code:
Private Sub CommandButton3_Click()
Dim Ligne As Integer, Colonne As Integer
Application.ScreenUpdating = False
ActiveWorkbook.Sheets.Add
With ActiveSheet
For Ligne = 1 To ListView1.ListItems.Count
.Cells(Ligne, 1) = ListView1.ListItems(Ligne).Text
For Colonne = 1 To ListView1.ColumnHeaders.Count - 1
.Cells(Ligne, Colonne + 1) = ListView1.ListItems(Ligne).ListSubItems(Colonne).Text
Next Colonne
Next Ligne
.PrintOut
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True
End With
Application.ScreenUpdating = True
End Sub
Re : Lisview: Impression avec sélections multiples
Bonsoir,
Code:
Private Sub CommandButton3_Click()
Dim i As Integer, j As Integer
Application.ScreenUpdating = False
ActiveWorkbook.Sheets.Add
k = 1
With ActiveSheet
For i = 1 To ListView1.ListItems.Count
If ListView1.ListItems(i).Selected = True Then
.Cells(k, 1) = ListView1.ListItems(i).Text
For j = 1 To ListView1.ColumnHeaders.Count - 1
.Cells(k, j + 1) = ListView1.ListItems(i).ListSubItems(j).Text
Next j
k = k + 1
End If
Next i
.PrintOut
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True
End With
Application.ScreenUpdating = True
End Sub
Re : Lisview: Impression avec sélections multiples
Bonsoir Kjin,
C'est tout simplement super !
(je vais attendre d'avoir accès à une imprimante pour crier vistoire..)
pour voir le résultat (notament la mise en page) j'ai fait une recherche sur "PrintPreview".. tu penses que ce serait possible d'ajouter cette fonction?j'ai essayé de replacer le ".PrintOut" de ton code par ".PrintPreview" ... n'essaye pas Excel panté et pas de deboggeurs!
je te joint un fichier que j'ai trouvé si tu as encore un peu de patience et de temps pour moi ...
Re : Lisview: Impression avec sélections multiples
Bonsoir,
J'ai un peu remanié le code
Test de la sélection avant le transfert, et désélection des lignes ensuite
J'ai ajouté le PrintPeview que tu pourras remplacé par PrintOut, si tant est que la config de l'impression ne soit pas utile.
A+
kjin
Re : Lisview: Impression avec sélections multiples
Bonjour Kjin,
J'ai vu que tu avais travaillé tard hier soir .. désolé du boulot que je te donnes !!
Moi j'ai attaqué assez tôt pour placer ces codes dans ma base de données,
j'ai testé le ByFranck V2 c'est exactement ce dont j'ai besoin, je l'ai adapté à la config réelle de ma base de données et ça plante. ça fait des heure que je cherche pourquoi .. je ne trouve pas!
Quand je colle mes info dans le ByFranck V2 et que je change la lecture jusqu'en colonne 58 ça roule, mais aussitôt que je place ces code dans ma base réelle je reste bloqué en "exécution" sur mon USF1 et je suis obligé de passer par le gestionaire de tâche Windows pour arrêter l'aplication et reprendre la main
J'ai recréé dans un nouveau fichier ma situation avec les code qui sont dans l'USF1 de ma base et patatra ça plante!
Je vais encore avoir besoin d'aide pour dépatouiller ce qui coince dans mon USF1 puisque semble-t-il c'est là que ça se passe !!
Re : Lisview: Impression avec sélections multiples
Bonjour,
La curiosité est un vilain défaut, mais pour le coup, si tu étais allé voir le formulaire1 de la V2 tu aurais vu la modif qui j'y avais faite
Donc dans ton UserForm1
Code:
Private Sub CommandButton14_Click()
'C'est ici que ça se passe
'===============
Me.Hide
UserForm7.Show
Me.Show
'===============
End Sub
En principe plus de bug
Comme je te l'ai dit, il faudra sans doute paramétrer l'impression
Re : Lisview: Impression avec sélections multiples
Bonjour Kjin,
Ton aide m'a vraiment dépanné!
J'ai seulement une petite questiuon d'ordre "esthétique"
Dans la dernère version (V3) quand on lance "Test Imprime" au second plan on bascule sur la page de données ... y aurait-il un moyen pour que la page arrière ne change pas (dans mon fichier j'ai une page d'accueil qui est un USF avec photo en plein écran et j'aimerais qu'on reste sur cette photo pour qu'on ne puisse pas voir la base de données.