Bonjour,
J'en appelle a votre aide sur un sujet dont je ne trouve pas la solution depuis des semaines.
J'aurais besoin d'une macro qui ajoute a une cellule existante la date du jour au format "jj.mois", mais ne modifierai pas la mise en page de la cellule.
Par une macro je cree une cellule au format "jj.mois" puis utilise le code :
Sub Pastenow()
'
Range("A" & "2").Value = "=DAY(TODAY())"
Range("A" & "3").Value = "=Month(TODAY())"
Range("A" & "4") = Range("A" & "2") & "." & Range("A" & "3")
If ActiveCell = "" Then
ActiveCell.FormulaR1C1 = ActiveCell.Formula & Range("A" & "4") & " "
Else
With ActiveCell
.Characters(Len(.Value) + 1).Insert vbCrLf & Range("A" & "4") & " "
End With
End If
Dim rngFrom1 As Range
Dim rngTo As Range
Dim lenFrom1 As Integer
Set rngTo = ActiveCell
lenFrom1 = rngTo.Characters.Count
With ActiveCell.Characters(lenFrom1 - 5, 6).Font
.Name = Cells(4, 1).Characters(1, 6).Font.Name
.Bold = Cells(4, 1).Characters(1, 6).Font.Bold
End With
With ActiveCell.Characters(lenFrom1, 1).Font
.Name = Cells(3, 1).Characters(1, 1).Font.Name
.Bold = Cells(3, 1).Characters(1, 1).Font.Bold
End With
SendKeys "{F2}"
End Sub
Deux problemes se creent :
- Au dessus de 150 caracteres la fonction .insert ne fonctionne plus.
- une fois sur 5 la commande Sendkeys me renvoie a la page d'impression.
Pour info le simple "&" fait perdre la mise en page de la cellule et enregistrer le format de chaque caractere de la cellule initiale prend trop de temps de chargement.
Si quelqu'un a une idee je suis preneur
Merci beaucoup
Jordan