OVH Cloud OVH Cloud

macrocommande

1 réponse
Avatar
mjpascal
bonjour a tous
peut on creer une macrocommande sous excel, pour imprimer automatiquement
par une touche de fonction ,sur une imprimante xxxx,où, yyyy
si oui

dite moi comment faire .

merci a tous

1 réponse

Avatar
RGI
Bonjour

peut être avec ceci

Sub SelectSheets()
Dim i As Integer
Dim TopPos As Integer
Dim iBooks As Integer
Dim PrintDlg As DialogSheet
Dim CurrentSheet As Worksheet
Dim cb As CheckBox
Application.ScreenUpdating = False
' Vérifier la protection du workbook
If ActiveWorkbook.ProtectStructure Then
MsgBox "Classeur est protégé.", vbCritical
Exit Sub
End If
' Ajoutez une feuille de dialogue provisoire
Set CurrentSheet = ActiveSheet
Set PrintDlg = ActiveWorkbook.DialogSheets.Add
iBooks = 0
' Ajoutez les boîtes à cocher
TopPos = 40
With ActiveWorkbook
For i = 1 To .Sheets.Count
If .Sheets(i).Name <> PrintDlg.Name Then
Set CurrentSheet = .Sheets(i)
' Passer les feuilles vides et les feuilles cachées
iBooks = iBooks + 1
PrintDlg.CheckBoxes.Add 78, TopPos, 150, 16.5
PrintDlg.CheckBoxes(iBooks).Text = _
Sheets(i).Name
TopPos = TopPos + 13
End If
Next i
End With
' Déplacer les boutons OK et Cancel
PrintDlg.Buttons.Left = 240
' Réactivez la feuille originale
CurrentSheet.Activate
PrintDlg.Visible = False
' Hauteur, largeur et titre du dialogue
With PrintDlg.DialogFrame
.Height = Application.Max _
(68, PrintDlg.DialogFrame.Top + TopPos - 34)
.Width = 230
.Caption = "Choisissez les feuilles à imprimer"
End With
' Change l'ordre des boutons OK and Cancel
' Donc le bouton d'option aura le centre
PrintDlg.Buttons("Button 2").BringToFront
PrintDlg.Buttons("Button 3").BringToFront
' Montrez la boîte de dialogue
Application.ScreenUpdating = True
If PrintDlg.Show Then
For Each cb In PrintDlg.CheckBoxes
If cb.Value = xlOn Then
MsgBox cb.Caption
Sheets(cb.Caption).PrintOut
End If
Next cb
Else
MsgBox "Rien de selectionné.....Au revoir"
End If


' Supprimez la feuille de dialogue provisoire (sans un avertissement)
Application.DisplayAlerts = False
PrintDlg.Delete
End Sub

Salutations

RGI

bonjour a tous
peut on creer une macrocommande sous excel, pour imprimer automatiquement
par une touche de fonction ,sur une imprimante xxxx,où, yyyy
si oui

dite moi comment faire .

merci a tous