je voudrais créer un menu déroulant horaires qui pour certaines heures afficher devra inscrire un texte dans une autre cellule.
est ce que cela est possible ?
je voudrais aussi que ce menu déroulant horaires que je vais creer dans validation des données est une police plus grosse que l'original
merci pour vos réponses.
A force de le rabâcher à longueur de fil, je perds l'appétit
Et comme Johnny n'est plus, qui pour me donner l'envie de poursuivre plus loin dans ce fil
Suggestions du dimanche matin
Tu remarqueras que je viens de supprimer mes précédents messages
(pour rendre ton fil plus lisible)
Je te suggère de faire de même
(car tu as laissé les précédents fichiers avec des données confidentielles dans tes messages*)
Qu'en penses-tu ?
NB: Donc les messages à supprimer seraient les suivants
message N° 5, 6, 7, 8 et 9
Sinon pour ta question, tu disais plus bas
Or dans ton dernier fichier en A7, on a : NOM PRENOM
@richardlion
Pourquoi l'espacement entre tes horaires n'est pas régulier?
J'étais parti sur ce type de macro, mais ça ne va pas vraiment
NB: Code à mettre dans le code de la feuille.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lig&
lig = CLng(1 + Split(Target.CurrentRegion.Address, "$")(UBound(Split(Target.CurrentRegion.Address, "$"))))
Cells(lig, Target.Column) = "coucou"
End Sub
Si l'espacement était régulier, ce serait plus facile d'avoir un repère.
@richardlion
Pourquoi l'espacement entre tes horaires n'est pas régulier?
J'étais parti sur ce type de macro, mais ça ne va pas vraiment
NB: Code à mettre dans le code de la feuille.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lig&
lig = CLng(1 + Split(Target.CurrentRegion.Address, "$")(UBound(Split(Target.CurrentRegion.Address, "$"))))
Cells(lig, Target.Column) = "coucou"
End Sub
Si l'espacement était régulier, ce serait plus facile d'avoir un repère.
@richardlion
Pourquoi l'espacement entre tes horaires n'est pas régulier?
J'étais parti sur ce type de macro, mais ça ne va pas vraiment
NB: Code à mettre dans le code de la feuille.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lig&
lig = CLng(1 + Split(Target.CurrentRegion.Address, "$")(UBound(Split(Target.CurrentRegion.Address, "$"))))
Cells(lig, Target.Column) = "coucou"
End Sub
Si l'espacement était régulier, ce serait plus facile d'avoir un repère.
Pour cette partie de ta question, une solution (à mettre également dans le code de la feuille)
(glanée dans mes archives des mois en bre )
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dt, j%
If Target.Count > 1 Then Exit Sub
If Target.HasFormula Then Exit Sub
If Target = "" Then Exit Sub
If IsNumeric(Target) Or IsDate(Target) Then
dt = CDbl(Target)
Select Case Len(dt)
Case 3, 4
j = (dt \ 100) \ 24
dt = TimeSerial((dt \ 100) Mod 24, dt Mod 100, 0)
If j > 0 Then dt = CSng(dt) + j
Target.NumberFormat = IIf(dt < 1, "hh:mm", "[h]:mm")
End Select
On Error Resume Next
Application.EnableEvents = False
Target = dt
Application.EnableEvents = True
End If
'->23916|MFerrand
End Sub
Pour cette partie de ta question, une solution (à mettre également dans le code de la feuille)
(glanée dans mes archives des mois en bre )
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim dt, j%
If Target.Count > 1 Then Exit Sub
If Target.HasFormula Then Exit Sub
If Target = "" Then Exit Sub
If IsNumeric(Target) Or IsDate(Target) Then
dt = CDbl(Target)
Select Case Len(dt)
Case 3, 4
j = (dt \ 100) \ 24
dt = TimeSerial((dt \ 100) Mod 24, dt Mod 100, 0)
If j > 0 Then dt = CSng(dt) + j
Target.NumberFormat = IIf(dt < 1, "hh:mm", "[h]:mm")
End Select
On Error Resume Next
Application.EnableEvents = False
Target = dt
Application.EnableEvents = True
End If
'->23916|MFerrand
End Sub
comme je suis nul en excel pourrais tu me dire a quel endroit de ma feuille je dois mettre le code ou me renvoyer la feuille avec le code a l'inteieur
dans tous les cas plus j'en apprend s mieux c'est....