Bonjour à tous,
Avant de copier mon code, voila une description aussi simple que possible de mon problème :
Contexte :
Je cherche, à partir de MsgBox et InputBox, à récupérer la lettre des colonnes (dans une feuille Excel) où se situent les informations dont mon programme à besoin.
Après un MsgBox avertissant l'utilisateur de la démarche, s'il accepte (il coche OUI) un InputBox s'ouvre pour chaque donnée et lui demande la colonne concernée. S'il refuse, les données par défauts (déjà insérées) sont utilisées.
Problème :
Lorsque je lance le programme, la MsgBox d'explication et les InputBox s'affichent bien, mais lorsque toutes les colonnes ont été demandées, la MsgBox du départ s'affiche une nouvelle fois et le programme boucle..
Désolé le code est long... Merci beaucoup pour toute aide!
Code :
Pierre
Avant de copier mon code, voila une description aussi simple que possible de mon problème :
Contexte :
Je cherche, à partir de MsgBox et InputBox, à récupérer la lettre des colonnes (dans une feuille Excel) où se situent les informations dont mon programme à besoin.
Après un MsgBox avertissant l'utilisateur de la démarche, s'il accepte (il coche OUI) un InputBox s'ouvre pour chaque donnée et lui demande la colonne concernée. S'il refuse, les données par défauts (déjà insérées) sont utilisées.
Problème :
Lorsque je lance le programme, la MsgBox d'explication et les InputBox s'affichent bien, mais lorsque toutes les colonnes ont été demandées, la MsgBox du départ s'affiche une nouvelle fois et le programme boucle..
Désolé le code est long... Merci beaucoup pour toute aide!
Code :
Code:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Fonction pour récupérer les lettres des colonnes
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function Colonne_configure() As Variant
'Choisir les colonnes de l'export qui vont contenir les informations importantes
'Pour que les données collectées soient les bonnes (par défaut si pas de configuration)
'Créer la matrice contenant les données
Dim Colonne(13, 2) As Variant
'Créer les valeurs par défauts et l'intitulé des cases
Colonne(0, 1) = "Nom du CA"
Colonne(0, 2) = "H"
Colonne(1, 1) = "Code de l'affaire"
Colonne(1, 2) = "A"
Colonne(2, 1) = "Code finalité"
Colonne(2, 2) = "L"
Colonne(3, 1) = "Affectation réalisée"
Colonne(3, 2) = "AG"
Colonne(4, 1) = "Début des travaux réalisé"
Colonne(4, 2) = "AK"
Colonne(5, 1) = "Mise en gaz réalisée"
Colonne(5, 2) = "W"
Colonne(6, 1) = "ARO réalisé"
Colonne(6, 2) = "U"
Colonne(7, 1) = "CREI réalisé"
Colonne(7, 2) = "Y"
Colonne(8, 1) = "Début des travaux prévu"
Colonne(8, 2) = "AJ"
Colonne(9, 1) = "Mise en Gaz prévue"
Colonne(9, 2) = "V"
Colonne(10, 1) = "ARO prévu"
Colonne(10, 2) = "T"
Colonne(11, 1) = "Temps alloué à l'étude"
Colonne(11, 2) = "O"
Colonne(12, 1) = "Temps alloué aux travaux"
Colonne(12, 2) = "P"
Colonne(13, 1) = "Temps alloué à la clôture"
Colonne(13, 2) = "Q"
'Afficher le message d'information : Voulez vous configurer + valeurs par défaut
depart = MsgBox("Vous pouvez choisir de configurer les colonnes de l'export ou garder les valeurs par défauts, indiquées ci-dessous :" & Chr(10) _
& Chr(10) & "- " & Colonne(0, 1) & " (" & Colonne(0, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(1, 1) & " (" & Colonne(1, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(2, 1) & " (" & Colonne(2, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(3, 1) & " (" & Colonne(3, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(4, 1) & " (" & Colonne(4, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(5, 1) & " (" & Colonne(5, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(6, 1) & " (" & Colonne(6, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(7, 1) & " (" & Colonne(7, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(8, 1) & " (" & Colonne(8, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(9, 1) & " (" & Colonne(9, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(10, 1) & " (" & Colonne(10, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(11, 1) & " (" & Colonne(11, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(12, 1) & " (" & Colonne(12, 2) & " par défaut)" _
& Chr(10) & "- " & Colonne(13, 1) & " (" & Colonne(13, 2) & " par défaut)" _
& Chr(10) & "Si vous désirez garder les valeurs par défaut, cliquez sur NON, si vous souhaitez configurer les colonnes, notez la lettre des colonnes concernées sur la feuille Export et cliquez sur OUI", _
vbYesNo + vbExclamation, "Attribution des colonnes")
'Poser les questions pour chaque colonne si l'utilisateur coche OUI
If depart = 6 Then
For i = 0 To 13
Colonne(i, 0) = InputBox(Colonne(i, 1), "Attribution des colonnes", Colonne(i, 2))
Next i
'Laisser utiliser les valeurs par défaut si NON
ElseIf depart = 7 Then
Colonne(1, 0) = "PAS BON"
End If
'Envoyer les données
Colonne_configure() = Colonne()
End Function
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Programme principal
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub Calcul_charge_statique()
'Montage de tous les programmes
Dim Colonne() As Variant
'Régler les colonnes de l'export
Colonne() = Colonne_configure()
'.... La suite marche bien, donc pas très intéressante
End Sub
Pierre