IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Probleme avec l'heure


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 75
    Par défaut Probleme avec l'heure
    Bonjour a tous , mon petit probleme le voici, dans m'as procedure si il est 10h30 alors la cellule active est en "C" si il est plus de 10h30 alors vas en "P" cela fonctionnais et maintenent plus rien il reste toujour en "C" puis suivant puisque je fais un tab a chaque fois que j'ai ecrit quelque chose .

    est-ce que quelqu'un pourrais me dire se qui manque , merci d'avance

    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
    Sub BECKBLA()
     Dim MyTime
    MyTime = #10:30:00 AM#
        With Worksheets(1).Range("A1:A47")
        Set c = .Find("BECKBLA", LookIn:=xlValues)
        If Not c Is Nothing Then
            Range(c.Address).Select
            Do While ActiveCell.Value <> ""
                If Time <= MyTime Then
                    If Left(ActiveCell.Address, 2) = "$O" Then
                        If ActiveCell.Offset(rowOffset:=1, columnOffset:=-12).Value = "14" Then
                            ActiveCell.Offset(rowOffset:=1, columnOffset:=-12).Activate
                        Else
                            Rows(Right(ActiveCell.Address, 1) + 1 & ":" & Right(ActiveCell.Address, 1) + 1).Select
                            Selection.Insert Shift:=xlDown
                            ActiveCell.Next.Select
                            ActiveCell.Next.Select
                        End If
                    Else
                        ActiveCell.Next.Select
                    End If
                Else
                    If Left(ActiveCell.Address, 2) = "$P" Or Left(ActiveCell.Address, 3) = "$AB" Then
     
                        If ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Value = "1" Or ActiveCell.Offset(rowOffset:=1, columnOffset:=-12).Value >= "26" Then
                            ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate
                        Else
                            Rows(Right(ActiveCell.Address, 1) + 1 & ":" & Right(ActiveCell.Address, 1) + 1).Select
                            Selection.Insert Shift:=xlDown
                            ActiveCell.Offset(rowOffset:=0, columnOffset:=14).Activate
                            ActiveCell.Next.Select
                        End If
                    Else
                        ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
                    End If
                End If
     
            Loop
     
        Else
            With Worksheets(1).Range("A1:A47")
                Set c = .Find("", LookIn:=xlValues)
                If Not c Is Nothing Then
                    Range(c.Address).Select
                    ActiveCell.Value = "BECKBLA"
                    ActiveCell.Next.Select
                    If ActiveCell.Offset(rowOffset:=-1, columnOffset:=0).Value = "Prépa" Then
                        ActiveCell.FormulaR1C1 = Range("b2") + 1
                        ActiveCell.Next.Select
                    Else
                        ActiveCell.FormulaR1C1 = ActiveCell.Offset(rowOffset:=-1, columnOffset:=0).Value + 1
                        ActiveCell.Next.Select
                    End If
                End If
            End With
        End If
     
        End With
     
    End Sub

  2. #2
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    et maintenent plus rien il reste toujour en "C"
    je ne vois pas de "C" mais plutot "O". c'est normal ?

    J'ai testé, et cela semble marcher (sans approfondir) mais évidement dans le coin il est 12h30.

    Si tu mets un debug sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If Time <= MyTime Then
    qu'as-tu dans Time et MyTime ? (question idiote mais on ne sait jamais).

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,


    Mytime =#10:30:00 AM#

    C'est indiqué.

    Dans Time il ne peut rien affecter, c'est une fonction qui renvoie l'heure système.

    Le problème est peut-être déjà de savoir si dans les Paramètres régionaux
    l'affichage de l'heure est dans le même format que celui choisi pour l'affectation à la variable MyTime

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 75
    Par défaut
    Bonjour a vous 2 et merci pour vos réponce , comme la dis jacques-jean MyTime = 10 H 30 et Timt = l'heure systeme je vient de trouver mon probleme mais si je pouvais le remplacer ce serais bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
    a la place de columnOffset:=1 c'est columnOffset:=15 que je dois mettre donc sa iras jusque le $O je vais tester avec un IF THEN pour voir

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 75
    Par défaut
    Voici ce que j'ai trouver cela fonctionne enfin a suivre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ActiveCell.Offset(rowOffset:=0, columnOffset:=15).Activate
                        Do While ActiveCell.Value <> ""
                            ActiveCell.Next.Select
                        Loop
    Merci pour vos réponce
    juste une autre petite question la macro s'appel "BECKBLA" et ecrit le meme nom grace a un bouton formulaire j'en ai plus de 20 comme sa et achaque fois je dois ecrire ou copier-coller la macro a chaque nouvo client ne pourrais-je pas avois 1 seul macro et a la place du nom mettre une variable comme sa meme avec un combobox il me suffirrais de creer le nom et c'est tous ??

  6. #6
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Citation Envoyé par dreloman Voir le message
    Voici ce que j'ai trouver cela fonctionne enfin a suivre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ActiveCell.Offset(rowOffset:=0, columnOffset:=15).Activate
                        Do While ActiveCell.Value <> ""
                            ActiveCell.Next.Select
                        Loop
    Merci pour vos réponce
    juste une autre petite question la macro s'appel "BECKBLA" et ecrit le meme nom grace a un bouton formulaire j'en ai plus de 20 comme sa et achaque fois je dois ecrire ou copier-coller la macro a chaque nouvo client ne pourrais-je pas avois 1 seul macro et a la place du nom mettre une variable comme sa meme avec un combobox il me suffirrais de creer le nom et c'est tous ??
    Serait-il possible de séparer les phrases ? Histoire de comprendre...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme avec le format Heure
    Par dijmo dans le forum SSRS
    Réponses: 0
    Dernier message: 31/03/2009, 14h14
  2. probleme avec le calcul des heures
    Par aibar dans le forum Access
    Réponses: 1
    Dernier message: 14/06/2006, 00h38
  3. Problème avec l'heure système
    Par Oega dans le forum Administration système
    Réponses: 1
    Dernier message: 15/05/2006, 16h03
  4. probleme date et heure avec mysql.
    Par argon dans le forum Langage SQL
    Réponses: 1
    Dernier message: 11/07/2005, 22h42
  5. Problem avec insertion de l'heure
    Par moniphal dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 29/04/2005, 11h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo