Traitement codes long
Résolu
jean300
Messages postés
374
Date d'inscription
Statut
Membre
Dernière intervention
-
jean300 Messages postés 374 Date d'inscription Statut Membre Dernière intervention -
jean300 Messages postés 374 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Peut-on accélérer le traitement de ces codes svp
En vous remerciant.
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.CountA(Range("F5")) = 0 Then Exit Sub
If Not Intersect(Target, Range("F5")) Is Nothing Then 'mettre après then le nom de la macro à executer
Ecrire
End If
End Sub
Sub Ecrire()
Application.ScreenUpdating = False
Logo
With Sheets("EC").Select
[B1] = "ASSOCIATION D'ENTRAIDE "
[B2] = "AUX PERSONNES EN DIFFICULTES"
End With
[B1:B2].Select
With Selection.Font
.Name = "Times New Roman"
.Size = 16
.ColorIndex = 1
Selection.Font.Bold = True
End With
[B1:E2].Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
End With
[B5].Select
[B5] = "Fiche individuelle concernant :"
With Selection.Font
.Name = "Times New Roman"
.Size = 14
Selection.Font.Bold = True
End With
[B5].Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
End With
[B5].Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
End With
[A8] = "Nom :"
[A9].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C,MATCH(EC!R5C6,Base!C24,1))),"""",INDEX(Base!C,MATCH(EC!R5C6,Base!C24,1)))"
[B9].Select
[B8] = "Prénom :"
[B9].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C,MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C,MATCH(EC!R5C6,Base!C24,0)))"
[A11] = "Né(e) le :"
[A12].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0)))"
[B11] = "Commune :"
[B12].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0)))"
[C11] = "Dpt ou CP :"
[C12].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0)))"
[A14] = "Demeurant :"
[A15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[B14] = "Complément adresse :"
[B15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[C14] = "CP :"
[C15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[D14] = "Commune :"
[D15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[A17] = "Tél Fixe :"
[A18].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0)))"
[B17] = "Tél Portable :"
[B18].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0)))"
[A8:B8,A11:C11,A14:D14,A17:B17].Select
With Selection.Font
.Name = "Times New Roman"
.Size = 8
End With
Selection.Font.Italic = True
' ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1 'Imprimer
ActiveWindow.SelectedSheets.PrintPreview 'Prévisualiser
RazLogo
Application.ScreenUpdating = True
End Sub
Sub Logo()
Dim F As Worksheet, Nom As String
Application.ScreenUpdating = False
'La feuille avec le logo doit être la feuille active
Worksheets("Img").Visible = True
Sheets("Img").Activate
ActiveSheet.Pictures("Picture 5").Name = "Logo"
ActiveSheet.Shapes("Logo").Copy
Nom = ActiveSheet.Name
Sheets("EC").Activate
Range("A1").Select
ActiveSheet.Paste
Selection.Name = "Logo"
Selection.ShapeRange.Left = 1.5
Selection.ShapeRange.Top = 1.5
Worksheets("Img").Visible = False
Application.ScreenUpdating = True
End Sub
Sub RazLogo()
Range("A1:E18,F5").ClearContents
ActiveSheet.Shapes("Logo").Delete
[F5].Select
End Sub
Peut-on accélérer le traitement de ces codes svp
En vous remerciant.
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.CountA(Range("F5")) = 0 Then Exit Sub
If Not Intersect(Target, Range("F5")) Is Nothing Then 'mettre après then le nom de la macro à executer
Ecrire
End If
End Sub
Sub Ecrire()
Application.ScreenUpdating = False
Logo
With Sheets("EC").Select
[B1] = "ASSOCIATION D'ENTRAIDE "
[B2] = "AUX PERSONNES EN DIFFICULTES"
End With
[B1:B2].Select
With Selection.Font
.Name = "Times New Roman"
.Size = 16
.ColorIndex = 1
Selection.Font.Bold = True
End With
[B1:E2].Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
End With
[B5].Select
[B5] = "Fiche individuelle concernant :"
With Selection.Font
.Name = "Times New Roman"
.Size = 14
Selection.Font.Bold = True
End With
[B5].Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
End With
[B5].Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
End With
[A8] = "Nom :"
[A9].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C,MATCH(EC!R5C6,Base!C24,1))),"""",INDEX(Base!C,MATCH(EC!R5C6,Base!C24,1)))"
[B9].Select
[B8] = "Prénom :"
[B9].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C,MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C,MATCH(EC!R5C6,Base!C24,0)))"
[A11] = "Né(e) le :"
[A12].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0)))"
[B11] = "Commune :"
[B12].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0)))"
[C11] = "Dpt ou CP :"
[C12].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[2],MATCH(EC!R5C6,Base!C24,0)))"
[A14] = "Demeurant :"
[A15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[B14] = "Complément adresse :"
[B15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[C14] = "CP :"
[C15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[D14] = "Commune :"
[D15].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[9],MATCH(EC!R5C6,Base!C24,0)))"
[A17] = "Tél Fixe :"
[A18].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0)))"
[B17] = "Tél Portable :"
[B18].FormulaR1C1 = "=IF(ISERROR(INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0))),"""",INDEX(Base!C[5],MATCH(EC!R5C6,Base!C24,0)))"
[A8:B8,A11:C11,A14:D14,A17:B17].Select
With Selection.Font
.Name = "Times New Roman"
.Size = 8
End With
Selection.Font.Italic = True
' ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1 'Imprimer
ActiveWindow.SelectedSheets.PrintPreview 'Prévisualiser
RazLogo
Application.ScreenUpdating = True
End Sub
Sub Logo()
Dim F As Worksheet, Nom As String
Application.ScreenUpdating = False
'La feuille avec le logo doit être la feuille active
Worksheets("Img").Visible = True
Sheets("Img").Activate
ActiveSheet.Pictures("Picture 5").Name = "Logo"
ActiveSheet.Shapes("Logo").Copy
Nom = ActiveSheet.Name
Sheets("EC").Activate
Range("A1").Select
ActiveSheet.Paste
Selection.Name = "Logo"
Selection.ShapeRange.Left = 1.5
Selection.ShapeRange.Top = 1.5
Worksheets("Img").Visible = False
Application.ScreenUpdating = True
End Sub
Sub RazLogo()
Range("A1:E18,F5").ClearContents
ActiveSheet.Shapes("Logo").Delete
[F5].Select
End Sub
A voir également:
- Traitement codes long
- Les codes ascii - Guide
- Pc long a demarrer - Guide
- Reconsidérer le traitement de vos informations à des fins publicitaires - Accueil - Réseaux sociaux
- Traitement de texte gratuit - Guide
- Ce traitement de texte gratuit et léger est parfait pour remplacer Word, même sur un vieux PC - Guide
2 réponses
Bonjour,
3h et 0 réponses plus tard...
Depuis 1 an que tu es inscrit tu n'as pas remarqué que tu avais une balise Code pour rendre la lecture agréable ?
Sinon c'est quoi l'intérêt de faire tout ça par macro et non directement sur la feuille à part une perte de temps ?
Il faut une raison solide, c'est quoi ?
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
3h et 0 réponses plus tard...
Depuis 1 an que tu es inscrit tu n'as pas remarqué que tu avais une balise Code pour rendre la lecture agréable ?
Sinon c'est quoi l'intérêt de faire tout ça par macro et non directement sur la feuille à part une perte de temps ?
Il faut une raison solide, c'est quoi ?
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Bonjour Eriiic,
Tu mets :
Depuis 1 an que tu es inscrit tu n'as pas remarqué que tu avais une balise Code pour rendre la lecture agréable ?
Non je n'ai pas remarqué cette balise.
c'est quoi l'intérêt de faire tout ça par macro
Parce que l'on m'a demandé de faire ainsi, l'impression se faisant sur l'imprimante du directeur.
J'ai accéléré le code en séparant l'écriture des formules.
Tu mets :
Depuis 1 an que tu es inscrit tu n'as pas remarqué que tu avais une balise Code pour rendre la lecture agréable ?
Non je n'ai pas remarqué cette balise.
c'est quoi l'intérêt de faire tout ça par macro
Parce que l'on m'a demandé de faire ainsi, l'impression se faisant sur l'imprimante du directeur.
J'ai accéléré le code en séparant l'écriture des formules.