Modifier cellule dans un tableau via un formulaire

Bonjour a tous,

Depuis plusieurs jours je galère à trouver la solution qui me permet de modifier une ou plusieurs données dans un tableau à partir d'un formulaire.

J'arrive à faire une recherche dans mon tableau via une recherchV d'une combobox et afficher les données dans les différentes textbox du formulaire, mais si je veut modifier l'une d'entre elle, cela pause un probleme. La donnée que j'écrit s'affiche dans la mauvaise colonne. D'autres ne 's'inscrivent pas du tous.

En pièce jointe, le petit programme(reduit a une quinzaine d'enregistrement)

En vous remerciant de l'aide que vous pouvez m'apporter.

Bonsoir,

j'ai intégré votre tableau dans un de mes fichiers en cours de développement : USF Universel.
l'idée ? Un classeur avec le code d'un USF qui s'adapte à une feuille de classeur sur laquelle se trouve un tableau structuré de données. Un bouton pour lancer le USF et voilà, vous pouvez "naviguer" d'une fiche à l'autre ou bien en supprimer ou bien les modifier et même en créer de nouvelles.

Le code est capable de reconnaitre les formats des données pour s'y adapter.

C'est en version "en cours de développement" donc peut-être y a t il quelques imperfections, mais dans l'ensemble cela fonctionne bien.

Votre fichier modifié :

@ bientôt

LouReeD

Bonsoir,

Le fichier ne fonctionne pas, malgré la désactivation de la sécurité des macros.

De plus ce petit programme ne semble pas correspondre a ce que je recherche.

Vous remercie d'avoir pris de votre temps pour me donner une piste de réflexion.

Cordialement.

Bonsoir à tous,

il y a une erreur dans la ligne suivante :

X = Application.Match(N, Range("b:b"), 0)

L'erreur est que tu tentes d'assigner le résultat de la fonction Application.Match à la variable X, mais tu n'as pas spécifié le type de recherche. Pour rechercher une correspondance exacte, tu devrais utiliser xlWhole à la place de 0. Voici la ligne corrigée:

X = Application.Match(N, Range("B:B"), xlWhole)

De plus, dans ton code, tu as deux fois la ligne suivante, ce qui signifie que la cellule D de la ligne correspondante sera mise à jour deux fois :

Sheets("COMMUN").Range("D" & X).Value = TxtBoxArrondissement

Bonjour Christian8021,

Finalement j'ai modifié ton code qui pose problème et changé ceci.

sans titre

Voici le fichier modifié et ça fonctionne? A toi de rajouter les autres texbox dans le code

Bonjour stepaustras,

Tout d'abord merci de ton retour.

Je viens de modifier cette ligne dans mon prog, et tout est rentrée dans l'ordre. Cette partie va pouvoir s’intégrer dans le reste de mon programme.

Je ne connaissais pas ce terme (xlwhole). Merci également pour la dénomination du tableau dans la propriété RowSource.

te souhaitant une bonne journée.

Cordialement.

Rechercher des sujets similaires à "modifier tableau via formulaire"