Date, Macro , Formule, aide debutant VBA

jeromevde

XLDnaute Nouveau
Bonjour,

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.

Merci de votre aide , d'avance

Jerome
 

jeromevde

XLDnaute Nouveau
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]
 

Pièces jointes

  • Test_20051013143333.zip
    13.1 KB · Affichages: 21

jeromevde

XLDnaute Nouveau
Personne veut m'aider :( :( :( :eek:

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

MERCI :eek:

Message édité par: jeromevde, à: 13/10/2005 16:44
 

Discussions similaires

Réponses
3
Affichages
836

Statistiques des forums

Discussions
312 344
Messages
2 087 447
Membres
103 546
dernier inscrit
mohamed tano