Msgbox vérification

julesdelf Messages postés 13 Statut Membre -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
je cherche à réaliser un programme me permettant d'afficher par une msgbox une liste de références associée à un nombre et de demander un étape de validation sinon les données sont effacées...
Pour être plus clair, dans ma colonne A, j'ai 20 références,
sur ma ligne 1 j'ai des dates
dans ce tableau, suivant les dates j'ai une certaines quantités de références mais certaines cellules sont vides et d'autres ont des chiffres
ce que je souhaiterais c'est :
à la date du jour, si une cellule n'est pas vide, enregistrer la valeur et sa référence. A la fin de toutes les références, je voudrais qu'une msgbox m'affiche la liste des références et des valeurs associées et me demande de valider cette liste ou de recommencer et donc de supprimer la colonne du jour...

je sais comment savoir si la cellule n'est pas vide mais je ne sais pas comment balayer la colonne en conservant les informations pour les ressortir toutes d'un coup

pouvez vous m'aider?

Merci beaucoup

6 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour,

    Peut-^tre l'effet du Lundi mais je n'ai rien compris à votre demande

    au besoin:
    Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
    et coller le raccourci proposé dans le message de réponse

    Et montrez précisément ce que vous voulez faire

    Michel
    0
  2. julesdelf Messages postés 13 Statut Membre
     
    Voila le type de fichier
    http://www.cjoint.com/c/EFpg04kLtjq
    En fait j'aurais besoin d'un msgbox qui me liste ce qui est rentré dans le 15/06 et qui me demande de valider ou alors de supprimer les données...
    C'est peut être aussi l'effet du lundi qui fait que j'ai du mal à m'exprimer... :)
    0
  3. Gyrus Messages postés 3360 Statut Membre 526
     
    Bonjour,

    Une macro à tester :
    Sub Test()
    Dim C As Range, Cel As Range
    Dim DerLig As Long
    Dim Msg As String
    Dim Reponse As Integer
    With Worksheets("Feuil1")
    Set C = .Rows(1).Find(Date, , xlValues)
    DerLig = .Range("B2").End(xlDown).Row
    If Not C Is Nothing Then
    For Each Cel In C.Offset(1).Resize(DerLig - 1)
    If Cel <> "" Then
    Msg = Msg & "Ref : " & .Range("B" & Cel.Row) & " ;Valeur : " & Cel & Chr(10)
    End If
    Next Cel
    End If
    If Msg <> "" Then
    Reponse = MsgBox(Msg & Chr(10) & "Voulez-vous valider la saisie ?", vbYesNo)
    If Reponse = vbNo Then C.Offset(1).Resize(DerLig - 1).ClearContents
    End If
    End With
    End Sub

    A+
    0
  4. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Re
    Option Explicit
    '----------------------------
    Sub indiquer_résultat()
    Dim jour As Range, Col As Byte
    Dim Nbre As Byte, Lig As Byte, Cptr As Byte, Texto As String

    Set jour = Application.InputBox(prompt:="se placer sur la date voulue", Type:=8)
    Col = jour.Column
    Nbre = Application.Count(Columns(Col), "*") - 1

    Lig = 1
    For Cptr = 1 To Nbre
    Lig = Columns(Col).Find("*", Cells(Lig, Col)).Row
    Texto = Texto & Cells(Lig, Col - 1) & ":=" & Cells(Lig, Col) & "; "
    Next
    MsgBox "le " & jour & Chr(10) & Texto

    End Sub

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. julesdelf
     
    Merci pour vos commentaires, ça marche super!!!!
    en revanche j'ai une autre question, sur le programme suivant, si je clique annuler dans l'inputbox il me met un message d'erreure.
    J'ai essayer de résoudre ça en mettant:
    if resultat = "" then exit sub mais ça ne fonctionne pas du tout,
    comment faire pour sortir du programme lorsqu'il y a une erreure?

    merci, voici le programme:

    Sub WDATE()
    Dim resultat As Date
    Dim PlageDeRecherche As Range
    Dim Valeur_Cherchee As String, AdresseTrouvee As String
    Dim cellule As Range

    resultat = InputBox("date du jour", "quelle est la date du jour?", "date du jour")
    If resultat = "" Then Exit Sub

    Valeur_Cherchee = resultat

    Set PlageDeRecherche = Range("D3:ZZ3")

    Set cellule = PlageDeRecherche.Cells.Find(what:=CDate(Valeur_Cherchee), LookIn:=xlValues)

    col = cellule.Column
    End Sub
    0
  7. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour
    On Error GoTo fin
    Set jour = Application.InputBox(prompt:="se placer sur la date voulue", Type:=8)
    '.......code
    Exit Sub
    fin:
    MsgBox "coucou" 'test à supprimer après essai concluant
    End Sub

    quant à ton code:
    1/pourquoi faire quand on peut faire compliqué
    2/ une saisie est toujours porteuse d'erreur
    0