Aide sur une erreur #VALEUR!

Re,
Dans ce cas, autant pour moi, mais peut-être supprimer les macros inutiles

Bonjour
Lorsque j interviens je le fais en m appuyant le plus possible sur ce que mon interlocuteur à déjà réalisé et de l adapter à son attente car sa réalisation est ce qui pour lui compréhensible et d avoir toutes les chances d être modifié par ses soins si besoin est
Donc je corrige ce qu il a réalisé pour que cela fonctionne
Ici la macro initial ne pouvait l être car d une conception trop touffue j ai réalisé une nouvelle procédure plus légère avec le même nom suivi d un indice gardant la première en place et de te laisser le choix de son devenir sa présence ne gênant en rien le fonctionnement du fichier juste à relier le bouton sur la nouvelle macro
A toi de voir le ménage à réaliser
J adapte ou je propose uniquement

A tester pour la macro

Sub ajout_int2()

  Dim Wd As Worksheet
  Set Wd = Sheets("historique inter")
 
    Wd.Rows("2:2").Insert Shift:=xlDown
    Wd.Range("A2").Value = Range("G1").Value
    
    Range("G1").Value = "FI-" & VBA.UCase(Format(Range("E18"), "mmmyy")) & "-" & _
      Format(VBA.Right(Wd.Range("A2").Text, 3) + 1, "000")
    
    Wd.Range("B2").Value = Range("B7").Value
    Wd.Range("C2").Value = Range("F8").Value
    Wd.Range("D2").Value = Range("B18").Value
    Wd.Range("E2").Value = Range("E18").Value
    Wd.Range("F2").Value = Range("B19").Value
    Wd.Range("G2").Value = Range("E19").Value
    Wd.Range("H2").Value = Range("A14").Value
    Wd.Range("I2").Value = Range("A23").Value
    Wd.Range("J2").Value = Range("A27").Value
    Wd.Range("K2").Value = Range("A32").Value
      If UCase(Range("D34")) = "X" Then
        Wd.Range("L2") = "oui"
      End If
       If UCase(Range("F34")) = "X" Then
      Wd.Range("L2") = "non"
      End If
    Range("B7,F8,A14,B19,E19,A23,A27,A32,D34,F34") = ""
End Sub

Si je ne me trompe pas j’ai uploade le fichier réalisé avec l’enregistreur et pas celui avec les commandes simple que tu as réalisé, mais sincèrement je préfère tes modifications donc je vais essayer nettoyer un peu

Je vais essayer et te répondre, elle a quoi de spécial par rapport à la première ?

Bonjour,
Regarde simplement si tu trouves une formule en E18
De plus, le fait de déclarer tes variables avec un OPTION EXPLICIT en haute de page, te solutionneras de nombreuses erreurs
Si on programme en macro, on fait tout en macros, pas avec des formules qui donneront des bugs.

Merci, je débute en macro et formules compliqués donc vous pouvez comprendre toute cette charabia :v::joy::joy:

Et que faire de la formule à l’origine de ce post celle qui calcule ne N° de fiche ?

Re,
Rien, le fait de créer une nouvelle fiche, l’effacera et te mettra à jour suivant le mois, l’année et son n° d’ordre
Teste

Je viens d’essayer ta macro je pense que ça marche parfaitement, pour la fonction recherche peut on faire la même chose ou c’est déjà bien comme ça ? Sans vouloir manquer de respect à FFO qui m’a aider énormément et ce depuis mon premier jour sur ce forum :v::v::v:

Merci beaucoup pour le ficher c’est parfait comme dab

Bonjour

Nous sommes une bonne équipe qui n’avons d’autres souci que de vous tendre une main secourable
Chacun y va de sa petite pierre y compris Mimimathy qui t’offre sa solution tout à fait respectable
J’avoue qu il lui est arrivé de m’aider dans mes propositions car je faisait fausse route et je l’en remercie
Donc respect à lui
Sa proposition vise à s’affranchir de la formule et de tout générer par VBA y compris la donnée G2
Ainsi de tout traiter par macro et non de faire un mixte macro/formule
C’est une perspective qui se défend
Certes je t’ai accompagné depuis l’origine mais son aide n’ai pas à négliger
A toi de choisir maintenant et si ce que je t’ai proposé te conviens gardes tout de même sa solution au chaud peut être à l’avenir on ne sait jamais
Pour le traitement « Recherche » c’est différent car en G1 onglet « Recherche » il n’y a pas de formule juste une listbox pour choisir le numéro inter dont les données doivent être récupérées
Cette listbox est ciblé sur l’onglet « historique inter » colonne A
J’ai apporté une petite correction la concernant
Je te joint le fichier adapté
Testes et dis moi
fiche_test(4).xlsm (55,3 Ko)

Merci champion pour ta disponibilité et ta gentillesse , je vais tester et te faire un retour :+1::+1::+1::+1:

Puis-je savoir Stp la correction apporté, j’ai beau cherché j’ai pas trouvé surtout que les 2 macros sont identiques je pense

La correction concerne le paramétrage de la listbox en G1 onglet recherche afin que tous les codes présents onglet « historique inter » colonne A soient proposés de la ligne 2 à la dernière
Ce paramétrage se trouve dans la partie Formules barre du haut Excel l icône Gestionnaire de nom
J ai corrigé la liste « Listref »

Elle débutait à partir de A5 au lieu de A2

Si tu souhaites plus de précisions n hésites pas

En effectuant des tests onglet « new fiche » avec le bouton « enregistrer » on a le même souci sur la formule pour la Lisbox de l’onglet « Recherche » en G1 celle-ci évolue à chaque traitement du bouton
J’ai rajouté dans le code du traitement de ce bouton des lignes de code pour que cette formule se maintienne comme pour la formule en G1 onglet « new fiche »
C’est pour cela que j’ai constaté l’anomalie de la

Je te joint une nouvelle version car la mouvance du paramétrage de la listbox provient de l’utilisation du bouton « enregistrer » et de son traitement même phénomène que pour la formule en G1 onglet « new fiche »
J’ai fais des tests pour cela
Même remède ajout de lignes de code dans la macro du bouton pour remettre la bonne formule dans le paramétrage de cette listbox afin d’avoir tous les codes numéro inter colonne A onglet « historique inter »
Désolé je découvre cette difficulté
J’espère que maintenant tout ira bien
A toi de me dire

fiche_test(4).xlsm (55,5 Ko)

Merci je vais vérifier, une autre question dans l’hypothèse où j’utilise la macro ajout_int2 proposé par mimimathy cette modification peut me servir ou pas ?

Justement j’ai fait cette remarque lors de mon précédent post, la listbox de l’onglet recherche ne pointait pas toujours la dernière fiche mais un peu plus bas donc j’ai du sélectionner manuellement la source de données colone A sur notre exemple,je me suis aperçu qu’il y écris =listref(que j’ai trouvé nulle part pour l’anecdote :grin::grin:)

Dans ma dernière version corrigée tu ne dois plus avoir de souci pour la listbox
Les lignes de codes que j ai inclus palient à l action d Excel qui lorsqu une ligne est rajoutée onglet " historique inter » modifient les formules qui y pointent

listref est le nom d une liste
Son paramétrage se trouve dans la partie Formules barre du haut Excel l icône Gestionnaire de nom
La cellule G1 onglet « Recherche » fait appel à cette liste dans Données/Validation de cette cellule
Et ainsi d avoir une listbox avec les données de la colonne À onglet " historique inter »

« une autre question dans l’hypothèse où j’utilise la macro ajout_int2 proposé par mimimathy cette modification peut me servir ou pas ? »

Il faudra rajouter ces dernières lignes de codes concernant le paramétrage de la listbox sinon tu seras à nouveau confrontė à l appauvrissement de son contenu

Fais des test avec mon dernier fichier transmis et dis moi