Aide code pour modifier

Bonjour le forum,

Besoin d'aide svp, je me rapproche de vous les prof d'excel et vba. .

J'essais de construire une main courante électronique adaptée à mon service, c'est déjà bien avancé jusqu' à maintenant, ou je bloque sur le UF "Consigne".

L'UF Consigne sert à noter un évènement à venir sur 1 date ou une période de date afin de voir la consigne s'afficher sur la feuille "MC Vierge" à ou aux dates concernées de la consigne.

1) L'enregistrement avec le bouton "Création" fonctionne, c'est sur le bouton "Modification" que je n'arrive pas à faire le code.

2) Pourquoi l'utilisation de l'UF consigne de fonctionne pas en restant sur la feuille "MC Vierge" ?

Si quelqu'un pourrai me donner un coup de main, ça serait sympas.

Cdlt

pompaero

Bonjour,

Pour le 2ème point je pensé que le problème vient de l'un de tes Range :

F1.Range(Cells(1, 1), Cells(1, 1).End(xlDown))

Le soucis c'est que tu veux chercher la dernière ligne remplie de la feuille consigne dans la première colonne, mais que pour ça tu appelles la Cells(1,1).End(xlDown) qui est la cellule A1 de la feuille active.

Il faut emplacer ça par ce code :

F1.Range(F1.Cells(1, 1), F1.Cells(1, 1).End(xlDown))

Il faut aussi remplacer pour les lignes qui suivent.

Pour le premier point... La textbox enregistre du texte et tu cherches dans une date, ça te fait déjà un soucis je pensé, essaye de convertir ta textbox en date ou précise que le format de la recherche est une date, ce será déjà un départ je pense

Merci de me dire si tu avances avec ces infos ou non

Bonjour Ausecour

Merci de ton soutien,

Pour le 2éme point je viens d'effectuer les modifs et ça marche, merci.

Le 1er point j'essai mais n'y arrive pas.

Merci

Cdlt

pompaero

Re,

Pour le 2éme point je viens de faire /

L = F1.Range("C").Find(what:=TextBox5, after:=Range("C2"), lookat:=xlWhole).Row 

Changé le A en C, mais ça ne doit être cela!!

Ausecour,

Je n'arrive pas à adapter mon code pour modifier sur l'UF Consigne.

Je cherche , j'essais mais non rien a faire ......

pompaero

Et moi je ne peux pas accéder a un ordinateur qui fonctionne Peut être ce soir...

J'avais aussi des problèmes avec ton find mais je ne sais pas si ça vient du range de départ ou non.... Parce que je ne suis même pas sûr que Range("C") soit valide, je crois qu'à un moment j'avais remplacé par range("C:C")

Mais avec le A

A un moment ça marchait un peu avec cette ligne :

L = F1.Range("A:A").Find(what:=Cdate(TextBox5), lookat:=xlWhole).Row

Mais mêmepas sûrque ce soit bien ça, il faudrait que je me repenche sur ton programme pour voir comment moi j'yferais, je trouverais peut-être d'où vient le problème

Bonjour

Désolé pour ton ordi, quand ça ne veut pas, ça ne veut pas 😕.

Moi non plus avec ce code, j'essaierai tout de même ta proposition des que possible.

Merci de ton aide, car la je patoge.

Cdlt

Pompaero

Bonjour, j'ai finis par me pencher sur le problème,

Je pense l'avoir résolu,

J'ai changé le Find par:

F1.Range("A:A").Find(Cdate(Textbox5)).Row

Et quelques F1.Range(cells,cells) par F1.Range(F1.Cells,F1.Cells)

J'ai aussi rajouté une gestion d'erreur,

Il reste un soucis c'est pour ça, si tu mets 24 juillet il te sort des trucs qui commencent le 11 juillet et finissent le 14 et quand tu veux modifier il ne trouve pas le 24.

En plus tu regardes si la date de début est inférieure et idem pour la date de fin, j'aurais plutôt dis que la date de fin doit être supérieure, quand a la colonne vide, je ne comprends pas la logique, pour moi le problème vient de là, je te laisse voir le fichier modifié.

Avec le 8 juillet ça fonctionne 😁

Bonjour

modification de la lisbox pour la modification

A voir

A+

Maurice

Bonjour Ausecour, archer

Encore merci de votre soutien, je viens rapidement de jeter un œil sur vos propositions, on sent rapproche . Je verrai ça demain car la fatigue me gagne.

A bientôt

pompaero

Rechercher des sujets similaires à "aide code modifier"