[Catégorie modifiée VB6 --> VBA] Remplir une cellule en fonction d'une autre [Résolu]

Messages postés
2
Date d'inscription
jeudi 23 septembre 2010
Statut
Membre
Dernière intervention
27 septembre 2010
- - Dernière réponse : chlo28
Messages postés
2
Date d'inscription
jeudi 23 septembre 2010
Statut
Membre
Dernière intervention
27 septembre 2010
- 27 sept. 2010 à 15:03
Bonjour a tous,
Je suis debutante en VBA et j'ai un petit soucis sur lequel je ne vois vraiment pas par ou commencer.

Voila ce que je veux faire:

J'ai un tableau sur Excel 2003 qui repertorie des reparations qui ont ete realisees a certaines dates.
Connaissant la periodicite de ces reparations, j'aimerais que dans une 3eme colonne s'affiche la date de la prochaine reparation.

L'idee de base ne me semble pas tres complique mais il y a beaucoup de taches differentes et je crois que je m'embrouille la tete toute seule.

Je vous remercie d'avance et j'espere que vous pourrez m'aider.
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61
3
Merci
Salut

Alors découpons le problème en tâches individuelles :
-1- Sélectionner un ensemble de cellules
Puisque ton tableau renferme plusieurs lignes, il va te falloir sélectionner les cellules sur lesquelles portent l'analyse.
Sais-tu faire ?
Si non, enregistre une macro pendant que tu le fais à la main et tu auras le code, genre :
Click sur A1 puis Maj-Ctrl-Flèche_bas pour atteindre la dernière cellule contenant des données

-2- Parcourir un ensemble de cellules
Une fois que tu as défini un Range des cellules qui servirons de 'source', la lecture de chaque cellule se fait à travers ce genre de code qu'on retrouve partout :
    Dim maCellule As Range
    For Each maCellule In ActiveSheet.Range("D1:D10")
        Debug.Print "Cellule " & maCellule.Address & ", contient " & maCellule.Value
        Debug.Print "Cellule " & maCellule.Offset(0,2).Address & ", contient " & maCellule.Offset(0,2).Value
    Next
Si tu ne connais pas cette structure de boucle, regarde les fonctions utilisées dans l'aide et fais des essais.
Notamment, apprends à utiliser .Offset, c'est très important pour pouvoir désigner une cellule voisine sans la nommer.

-3- Calculer des dates
Les calculs autour des dates s'articulent autour de :
- DateAdd pour ajouter ou retrancher des jours, semaines, mois, heures, ...
- DateDiff pour calculer une différence entre deux dates
Là aussi, tout est expliqué dans l'aide.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 223 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Jack
Messages postés
2
Date d'inscription
jeudi 23 septembre 2010
Statut
Membre
Dernière intervention
27 septembre 2010
0
Merci
Bonjour,

Merci beaucoup d'avoir consacre du temps a mon probleme.
Je suis arrive de mon cote a realiser quelque chose de fonctionnel sans passer par une fonction de recherche comme je le voulais auparavant.

Merci
Commenter la réponse de chlo28