Recherche d'une solutions dans un tableau avec décalage

Bonjour à tous ! Je suis en stage dans une boite de btp et je doit faire un prog vba sur le choix de matériel près rentrées sur excel !

Voici mon problème car je suis novice...

A partir d'une colonne de 365 dates (sur un an) et a partir d'une cellule daté (un jour précis) déterminer par l’utilisateur je cherche a rechercher cette date selectionner dans mon tableau et à sélectionner une cellule situé sur la même ligne et décalé de 14 colonnes !

Je ne sais pas si cela est bien expliqué mais je voici ce que j'ai fait:

Sub dates()

Dim cell As Range

Dim a, b, c As Double

Sheets("feuil1").Select

a = Range("D7")

b = Range("D8")

For Each cell In Sheets("feuil2").Range("B3:B367")

If cell.Value = b Then

cell.Value.Offset(0, 13).Select = c

End If

Next

Cells(20, 10) = c

End Sub

merci a tous !

Bonjour et bienvenue sur le forum

Essaie ce code :

Sub dates()

Dim cell As Range
Dim a
Dim b, c As Double 'inutiles

Sheets("feuil1").Select
a = Range("D7")
b = Range("D8") 'Inutitle
For Each cell In Sheets("feuil2").Range("B3:B367")
 If cell.Value = a Then
    cell.Offset(0, 13) = a
    Sheets("Feuil2").Select
    cell.Offset(0, 13).Select
    End
 End If
Next
 'Cells(20, 10) = c 'A quoi cela sert ?
End Sub

Te convient-il ?

Bye !

le cells (20,10) sert a afficher le resultat obtenue dans le tableau après decalage


merci beaucoup votre code marche mais il affiche ceci dans la cellule (20,10) de la feuille 1:

00/01/1900


Tenez voici mon fichier cela sera peut être plus clair pour vous pour mieux comprendre et m'aider!

mon b = Range("D8") sert a avoir une autre date de fin et à sélectionner dans le même tableau que précédemment la valeur decaler de 13 cellule.

J'aimerais ensuite faire la somme de toutes les cellules entre ces deux dates afin d'avoir la puissance totale de l'installation en fonction des dates choisi par l'uilisateur dans les deux cellules de la feuille 1!

Est-ce clair?

Merci pour votre aide en tout cas...


Bonjour

teck5656 a écrit :

Tenez voici mon fichier cela sera peut être plus clair

Ce doit être moi qui n'y vois pas clair car, j'ai beau écarquiller les yeux, je ne vois pas de fichier joint.

Il était peut-être trop gros. Essaie de le compresser ou passe par http://www.cjoint.com

Bye !

c'est bon la ?

17vba1.xlsm (60.32 Ko)

Un essai à tester. Te convient-il ?

Bye !

15vba2.xlsm (62.96 Ko)

SUPER !!!!

trop fort et si simple une fois que l'on a la réponse , seule petite question pour ma culture VBA, à quoi sert la fonction "CDate"?

MERCI

Bonjour

teck5656 a écrit :

à quoi sert la fonction "CDate"?

Quand tu passes toutes les cellules d’une plage contenant des dates et que tu écrit :

    For Each cell In Sheets("Feuil2").Range("B3:B367")
        If CDate(cell.Value) = a Then

La valeur de cell sera bien la date mais en format texte, c’est-à-dire entre guilllemets : ‘’1/03/2015’’ par exemple.

En revanche, CDate(cell.Value) te donne bien la date, sans guillemets

Bye !

super merci pour les explications, très intéressant !

le programme marcherait pareils si les cases étaient du texte et nom des valeurs?

j'ai voulu faire un test mais a partir de mot cette fois ci et nom d'une date et cela ne marche pas

si je suis votre raison il faut que je change "CDate" par une fonction genre "mot" mais je ne la trouve pas dans l'aide VBA !

Merci

Si, comme tu dis, les cases étaient du texte, il n'y a pas lieu de mettre quoique ce soit. On laisse '' cell.value '' tel quel.

Ok ?

OK PARFAIT !

MERCI BEAUCOUP EN TOUT CAS


pourquoi quand je sélectionne bois mon programme marche mais pas avec electricité

12vba1.xlsm (18.86 Ko)

voici mon problème avec le choix du combustible !!

avec bois cela marche mais pas avec electricvité...

what the fuck?

merci de votre aide !

12combustible.xlsm (18.86 Ko)

Bonjour

teck5656 a écrit :

pouvez vous répondre a ma dernière question svp ?

merci d'avance !!

Mais....ne l'ai-je pas fait ? ici :

gmb a écrit :

Si, comme tu dis, les cases étaient du texte, il n'y a pas lieu de mettre quoique ce soit. On laisse '' cell.value '' tel quel.Ok ?

Bye !

oui vous avez répondu mais en essayant ce que vous m'avez dit cela ne marche pas tout le temps !!

j'aurai voulu que vous regadriez le programme "combustion" que je vous ait envoyé juste au dessus pour voir vite fait ce qui ne va pas car a mon avis j'ai un détail qu'il manque

teck5656 a écrit :

a mon avis j'ai un détail qu'il manque

En effet, un gros détail : il y a des espaces avant et après les noms de la liste déroulante. De ce fait, ces noms ne sont pas les mêmes que ceux de la feuille 2.

OK ?

Bye !

tout simplement

merci beaucoup de votre aide en tout c'est super gentil de votre part

bye !

Rechercher des sujets similaires à "recherche solutions tableau decalage"