Diverses petites astuces

Macro pour mettre au format horaire
Exemple: dans la colonne A, j'écrie 815, la macro me traduit en 08:15 , mettre la cellule au format souhaiter
Sub calendrier()
varAn = Val(InputBox("Année ?", "CALENDRIER"))
If varAn = 0 Then GoTo fin 'clic sur touche Annuler ou la croix
X = DateSerial(varAn, 1, 1)
Y = DateValue("31 décembre " & varAn)
For i = 0 To Y - X
Range("A" & i + 1) = X + i
Next
fin:
End Sub
Retour liens Excel



Formules pour trouver la date du premier jour, en donnant , l'année et le numéro de la semaine.
Attention bien formater les cellules en date.
Dans l'exemple : Année en A1 et Numéro de semaine en A2.
Formule 1 : "=SOMME(MOD(("1/"&A1;)-{0;6};{1E+99;7})*{1;-1})+A2*7-4 "
formule 2 : "=SOMME(MOD(("1/"&A1;)-{0;6};{1E+99;7})*{1;-1})+A2*7-4 "

Retour liens Excel

 


Formule pour trouver la date du lundi a partir du numéro de semaine.

Formule 1: =D5*7+DATE(ANNEE(AUJOURDHUI());1;1)-7 "D5 est la cellule du numéro de semaine.
Formule 2: =DATE(ANNEE(AUJOURDHUI());1;-6)+D6*7 "D6 est la cellule du numéro de semaine.

Retour page liens

 


  je voudrai calculer la somme des valeurs par rapport a deux critères.
Situation nom prix
NORD TITI 10
SUD TUTU 20
EST TOOT 30
NORD TATA 40
NORD TITI 50
Ex : PRIX = 60 avec comme critères (NORD et TITI)
En supposant que tu utilise les colonnes A,B et C voici la formule n'oublie pas de faire Majuscule, CTRL en même temps et Entrée, plutôt que tout simplement entrée.
=SOMME((A1:A5="nord")*(B1:B5="titi")*(C1:C5))

Retour liens Excel


Calculer le nombre de semaine entre deux dates

Exemple en A1 et A2 (cellules au format date) semaine entamer
=PLANCHER(PLANCHER(A2-A1;1)/7;1) ou des semaines entières
=TRONQUE((A2-A1)/7)&" semaine(s)" ou des semaines entières
=ENT((B1-A1)/7) (cellules au format standart)

Retour liens Excel


Trouver les années,mois, jours entre deux dates, positives ou négative.

Formule exemple en A4 et B4 (cellule au format date) et la formule dans une cellule au format standard.
=DATEDIF(A4;B4;"y")&SI(DATEDIF(A4;B4;"y")>1;" ans, ";" ans, ")&DATEDIF(A4;B4;"ym")&" mois, "&DATEDIF(A4;B4;"md")&SI(DATEDIF(A4;B4;"md")>1;" jours";" jour")

Trouver le nombre de mois même entamés entre deux dates, positives ou négatives.

Formule exemple en E12 et D12 (cellule au format date) et la formule au format standard.
=ANNEE(E12)*12+MOIS(E12)-ANNEE(D12)*12-MOIS(D12)

Trouver le nombre de mois même entamés d'une date à aujourdhui.

Formule exemple en D16 (cellule au format date) et la formule au format standard.
=ANNEE(D16)*12+MOIS(D16)-ANNEE(AUJOURDHUI())*12-MOIS(AUJOURDHUI())

Exemple de formule simple sur les dates.

Retour liens Excel


Trouver la date du lundi avec le numéro de la semaine

Exemple par formule, En D8 le numéro de la semaine, et E8 Lundi, mettre au format date
=(7*D8+DATE(ANNEE(AUJOURDHUI());1;3)-JOURSEM(DATE(ANNEE(AUJOURDHUI());1;3))- 5)+(EQUIV(E8;{"Lundi";"Mardi";"Mercredi";"Jeudi";"Vendredi";"Samedi";"Dimanc he"};0)-1)
Autre solution en fonction.

Retour liens Excel


Trouver le numéro de le semaine à partir d'une date

Exemple en D10 la date 17/7/01 , la formule:
=SI(NO.SEMAINE(D10)<53;NO.SEMAINE(D10);NO.SEMAINE(D10)-52)

Retour liens Excel

 


Trouver le dernier jour du mois donné

Exemple: en A1 l'année, en B1 le mois, cellule au format standart
=JOUR(FIN.MOIS(DATE(A1;B1;1);0))
=JOUR(DATE(A1;B1+1;0))
=JOUR(DATE(A1;B1+1;0))
Ou une autre formule avec la date complète en A1
=DATE(2001;A1+1;0) te retourne le dernier jour du mois entré en A1

Retour liens Excel

 


Fonction pour écrire dans une cellule donnée la formule contenue dans une autre cellule

Ecrire la fonction dans le module du classeur ouvert.
Function Formul(cel As Range)
Formul = cel.FormulaLocal
End Function
Dans la cellule désirée, écrire la formule suivante:
=Formul("la cellule ou est la formule à copier")

Retour liens Excel

 


Macro pour calculer le poucentage sur un total d'une colonne.

Exemple: Dans une colonne les chiffres, 14 , 10 , 23 , 25 ,
la macro calcul le total dans la cellule en dessous soit 72
et dans la colonne suivante indique le poucentage par rapport au total 72
soit en face 14 ,19% en face de 10 ,14% en face de 23 , 32% en face de 25 ,35%
et en face du total 72 , 100%
Mettre les cellules au format nombres
Macro:
Sub SommePourcentage()
Dim Plage As Range
Dim Cellule As Range
Set Plage = Selection
With Plage
Cells(.Cells(.Cells.Count).Row + 1, .Column).FormulaLocal = "=somme(" & .Cells(1).Address & ":" & _
.Cells(.Cells.Count).Address & ")"
Cells(.Cells(.Cells.Count).Row + 1, .Column + 1).FormulaLocal = _
"=somme(" & .Cells(1).Offset(0, 1).Address & ":" & .Cells(.Cells.Count).Offset(0, 1).Address & ")"
For Each Cellule In Plage
Cellule.Offset(0, 1).FormulaLocal = "=" & Cellule.Address & "/index.html" & _
Cells(.Cells(.Cells.Count).Row + 1, .Column).Address
Next Cellule
End With
End Sub

Retour liens Excel

 


Compter le nombre de cellules de la même couleur de fond

Fonction SomCool.
Exemple : Mettre dans la cellule du résultat la formule suivante
=SomCool(A1:B5;"rouge")
On peut ajouter des couleurs a la fonction.
Function SomCool(Zne As Range, Couleur As String)
Application.Volatile True
Select Case Couleur
Case "rouge"
Couleur = 3
Case "vert"
Couleur = 50
Case "jaune"
Couleur = 6
Case "bleu"
Couleur = 5
Case "gris"
Couleur = 15
Case "orange"
Couleur = 40
End Select
For Each cell In Zne
If cell.Interior.ColorIndex = Couleur Then cvSomme = cvSomme + 1
Next
SomCool = cvSomme
End Function

Retour liens Excel

 


Pour avoir une sorte de chronomètre dans la feuille.

Copie ces quelques lignes de code dans un module et dans la ou les cellules de la feuille ou les feuilles de ton choix entrer la formule =MonHeure
Voici le code:
Sub Chronometre()
Application.OnTime Now + TimeValue("00:00:01"), "HeureUpdate"
End Sub
Sub HeureUpdate()
ValeurHeure = Format(Now, "DD MM YYYY HH:MM:SS")
ActiveWorkbook.Names.Add "MonHeure", ValeurHeure
Chronometre
End Sub
On peut changer le format de la date et heure.

Retour liens Excel