Bonjour le forum,
j'ai a nouveau besoins de votre savoir. je souhaite décalé vers la droite des valeurs ligne par ligne. Quelle serait la formule a mettre en place.
voici un exemple de fichier
Merci à vous
Bonjour carré d'as
Je ne sais pas si cela t'iras, mais je pense qu'il faudrait utiliser Excel "normalement"
Une base de données structurée en feuil2. On saisie au fil de l'eau le numéro de vache en colonne vache et la date en colonne date.
La présentation, avec décalage, est en feuil1 basée sur des formules.
Pour le test, mets une nouvelle vache dans la base avec la date de ton choix, tu verras que tout évolues.
Si tu saisis une vache existante avec une nouvelle date, toute la ligne correspondante se "pousse"
Pour décaler des cellules au fur et à mesure des saisies directement sur la même feuille il faudra passer par du vba et la situation deviendras, je pense, vite ingérable.
J'ai utilisé des tableaux de feuilles qui n'existent pas sous 2003.
Il faudrait créer des plages dynamiques (a base de DECALER) à l'ancienne
Je le mets sous xls, mais je ne sait pas qu'elle tête aura le fichier à l'ouverture.
Les formules matricielles sont :
En feuil1 $A2 à tirer vers le bas (pour récupérer les numéros de vaches):
Bonjour le forum , Bonjour Efgé, Natrop;
Parfait Efgé, il me reste a l'intégrer dans ma BD en apportant quelques "modif" de présentation à ma BD. je vous soumet un autres de mes casses têtes en pièces jointes.
ENCORE MERCI
Bonsoir Efgé,
Le décalage à droite des valeurs s'est ok. Mon soucis est dans la saisie des dates dans la BD. j'ai essayé d’être plus précis dans le fichier jointes.
Encore merci à vous
@carré d'as
Si tes données sources ne sont pas saisies mais récupérées depuis un autre fichier par formule, je ne peux rien pour toi.
Si ce n'est pas le cas, merci de préciser le problème rencontré. Ton dernier fichier ne reprends absolumentr pas ma proposition.
Double-clic sur une date en colonne B pour décaler les dates vers la droite :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <> 2 Or Not IsDate(Target) Then Exit Sub
Cancel = True
Target(1, 2).Resize(, 3) = Target.Resize(, 3).Value
Target = ""
End Sub
Bonjour le forum et bonjour job75, Efgé et natrop
le code VBA de job75 est parfait, tellement parfait qu'il s'est intégré à ma bd comme un gant.
Encore Merci à vous tous Merci job75