Voila je suis chargé de mettre en place un systeme de suivi de projet (plannification) basé sur des feuilles de calcul excel. Seulement voila je suis novice dans Excel et il n'est pas evident de comprendre toutes les possibilités de cet outil.
C'est pourquoi j'aimerais avoir un petit coup de pouce de votre part. Voici ce que j'aimerais faire, je vais essayer d'etre clair (c'est pas evident) :
Dans une premiere colonne, la personne introduit une date (manuellement ou via un userform de type calendrier). Une fois cette date introduite, les X dates suivantes dans les X colonnes suivantes sont calculées automatiquement. C'est tres facile a faire sans utiliser de macro c'est ce que je fais actuellement
Mon probleme se situe dans le fait que l'utilisateur devrait pouvoir introduire une DATE2 differente de celle calculée automatiquement par rapport à la DATE1. (Modification dans le planning par exemple). Le hic c'est qu'en faisant cela il supprime la formule introduite précedemment et s'il decide de revenir en arriere les autre dates dependant de la DATE2 (DATE3, DATE4,...) ne seront plus calculables.
Je me demande donc s'il n'y aurait pas moyen de créer une fonction VBA permettant de voir si on introduit manuellement ou non une date . Si ce n'est pas une entrée manuelle alors la date calculée est le resultat d'une formule.
J'ai eu un petit souci avec l'attachment (lié sans doute a mon inexpérience sur ce forum); Voici donc le fichier [file name=Test_20051013143333.zip size=13422]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Test_20051013143333.zip[/file]
Voici ce que j'ai pensé faire , mais je sais pas du tout si c'est correct et aussi comment faire pour que cela s'exécute ?
Code:
Sub calcDate(ByVal Delay As Integer, prevDate As Date, Target As Range)
Dim newDate
newDate = ActiveSheet.Range('Target.Column').Value
If (newDate <> '') Then
newDate = Workday(prevDate, Delay)
End If
End Sub
Delay est le nombre de jour a prévoir entre les 2 dates et est different d'une colonne a l'autre.
Je ne comprend rien de rien au VBA, help please !!! :d