Bonsoir à tous,
J'ai personnalisé une boite de dialogue grâce à la méthode MsgBoxEx de arkham46, mais lors de l'affichage cette dernière est très étroite et plusieurs retour à la ligne ont été créés.
Comment faire pour que les retour à la ligne soit respectés et donc que la boite de dialogue s'adapte à cette largeur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 Sub NouveauEA() Dim Chemin2 As String, Fichier As String Dim Rep As Long Dim ltexte As String '------------------------------------------------------------------------ '----------Copie + Incrémentation du Classeur et de la Feuille----------- '------------------------------------------------------------------------ 'Chemin variable de destination du fichier copié obtenu par la commande Concatener Chemin2 = Range("A11").Value 'Nom variable du fichier à copier obtenu par la commande Concatener Fichier = Range("A15").Value & ".xls" ltexte = "{\rtf1\ansi\ansicpg1252\deff0\deflang1036{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial Black;}{\f1\fswiss\fcharset0 Arial;}}" & _ "{\colortbl ;\red255\green0\blue0;\red0\green0\blue255;}" & _ "{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\qc\cf1\b\f0\fs24 ATTENTION !\par" & _ "\cf0\b0\f1\fs20\par" & _ "L'Etat d'Acompte servant de base \'e0 l'\'e9tablissement de la prochaine situation de travaux\par" & vbCrLf & _ "a \'e9t\'e9 modifi\'e9 depuis son ouverture !\par" & vbCrLf & _ "\par" & vbCrLf & _ "\cf2\ul Vous devez le sauvegarder pr\'e9alablement pour pouvoir continuer.\par" & vbCrLf & _ "\cf0\ulnone\par" & vbCrLf & _ "\b Cette action sera irr\'e9versible,\par" & vbCrLf & _ "\b0\par" & vbCrLf & _ "En cas de doute, choisissez \b Non\b0 et controlez si les modifications doivent-\'eatre enregistr\'e9es.\par" & vbCrLf & _ "\cf1\ul\b ENREGISTRER ?\par" & vbCrLf & _ "}" 'Vérifie que le fichier source a été modifié depuis son ouverture If Not ThisWorkbook.Saved Then Rep = MsgBoxEx(ltexte, vbCritical + vbYesNo) If Rep = vbNo Then Exit Sub Else ThisWorkbook.Save End If End If 'Vérifie que le fichier cible n'existe pas et interroge l'utilisateur si Oui If Dir(Chemin2 & Fichier) <> "" Then 'le fichier existe If MsgBox("Ce fichier existe déjà ! Voulez vous le remplacer ?", vbYesNo) <> vbYes Then Exit Sub Application.DisplayAlerts = False 'Message de confirmation désactivé End If 'Copie le fichier à l'emplacement spécifié ActiveWorkbook.SaveCopyAs Chemin2 & Fichier Application.DisplayAlerts = True 'Ouvre le fichier copié Application.Workbooks.Open Chemin2 & Fichier 'Incrémante le nom de la feuille de 1 sur le fichier copié Sheets(Range("A16").Value).Select Sheets(Range("A16").Value).Name = Range("A15").Value 'Lance la macro affectée au raccourcis Crtl+t SendKeys "^t" 'Ferme le fichier source (False : sans sauvegarde / True : avec sauvegarde) ThisWorkbook.Close End Sub
Partager