Format date et vode VBA pour tableau simple

Factotum

XLDnaute Nouveau
Bonjour,
Je travaille avec EXCEL depuis des années. Actuellement, je dispose d'Excel 2007 et de Windows XP. Je voudrais maintenant m'initier à la création de macros Visual Basic.
Mes deux premières macros fonctionnent très bien : il s'agit de la mise à largeur des colonnes en fonction de leur contenu et la suppression ou l'affichage du quadrillage.
Je suis maintenant en difficulté avec une nouvelle macro. Il s'agit d'obtenir un MsgBox avec le nom d'une constellation (variable déclarée en Dim As String) en référence à une date anniversaire (variable déclarée en Dim As Date dans le code VBE et à entrer dans un InputBox).
J'ai tapé les 366 dates d'anniversaire possibles en colonne A d'un fichier Excel (sous le format cellule personnel "j-mmm") et, en regard de celles-ci, les noms des 12 constellations crorrespondantes (sous le format de cellule "texte"). Mais cela ne marche pas...
Si quelqu'un pouvait me donner un exemple de tableau à 2 colonnes, avec seulement quelques lignes, et surtout, le code VB adéquat, j'en serais très heureux.
Merci d'avance en toute amitié.

Factotum
 

Pierrot93

XLDnaute Barbatruc
Re : Format date et vode VBA pour tableau simple

Bonsoir Factotum

si tes dates en colonne A et tes noms de constellations en colonne B, regarde le code ci dessous, si ca peut t'aider :

Code:
Option Explicit
Sub test()
Dim d As Date, c As Range
d = InputBox("saisissez une date !!!")
If IsDate(d) Then
    Set c = Range("A:A").Find(d, , xlValues, xlWhole, , , False)
    If Not c Is Nothing Then MsgBox "Pour le : " & d & vbLf & _
        "c'est la constellation : " & c.Offset(0, 1).Value
End If
End Sub

bonne soirée
@+
 

Factotum

XLDnaute Nouveau
Re : Format date et vode VBA pour tableau simple

Bonjour et merci à Pierrot93 !
Je viens de rédiger le code proposé par Pierrot93. Cela semble marcher puisque je n'obtiens plus de message d'erreur... MAIS il semble encore y avoir un "stud"...
En effet : aucun message MsgBox n'apparaît après avoir entré la date par l'InputBox... Donc, pas de réponse du tout !
Que manque-t-il encore ?

Amicalement,
Factotum
 

Pierrot93

XLDnaute Barbatruc
Re : Format date et vode VBA pour tableau simple

bonjour Factotum

il ne trouve sans doute pas la valeur saisie dans l'inputbox dans la colonne A. Sous quel format tu renseignes l'inputbox ? Essaye en mettant JJ/MM/AAAA.

Sinon mets un fichier en pièce jointe, pas forcement la totalité, mais avec le type de données, les formats et le code.

bon après midi
@+
 

Factotum

XLDnaute Nouveau
Re : Format date et vode VBA pour tableau simple

Quelle érudition !
J'ai changé le format de la date dans la colonne A de la feuille de calcul comme proposé (jour/mois/année) et j'entre seulement un jour et un mois (25/09 par exemple) dans l'InputBox, et ça marche !
Merci !
Factotum
N.B.: Le message MsgBox n'apparaît cependant que sur une cellule quelconque de la feuille de calcul où figure le tableau, donc pas sur les autres feuilles du même classeur, et, a fortiori, dans un autre classeur. Je suppose que c'est normal...
 

Pierrot93

XLDnaute Barbatruc
Re : Format date et vode VBA pour tableau simple

Re,

attention, si tu ne saisis pas l'année dans l'inputbox, Excel la déduira comme l'année en cours (chez moi, Excel 2003). Un peu gênant si dans ta colonne "A" se trouve une autre année.

D'autre part, la macro recherche sur le classeur actif, feuille active, donc si tu as des données sur un autre classeur, elle fonctionnera également, dès l'instant ou celui ci sera actif.

bonne soirée.
@+
 

Discussions similaires

Réponses
17
Affichages
689

Statistiques des forums

Discussions
312 361
Messages
2 087 626
Membres
103 611
dernier inscrit
sebboes