procédure VBA pour ajouter des données dans un tableau
4 réponses
Pierre Qui Roule..
Bonjour,
Je cherche à écrire une procédure VBA qui
- recherche la première ligne disponible dans une feuille
- met une donnée dans une colonne précise de cette ligne, mais dont la
position peut varier
au cours du temps.
La procédure doit fonctionner quelle que soit la position de cette colonne.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pierre Fauconnier
Bonjour
Voici quelque chose de paramétrable
Sub PlacerValeur(Feuille As String, PosColVerif As Integer, _ PosColValeur As Integer, Valeur As Variant) ' Feuille est le nom de la feuille souhaitée ' PosColVerif est le numéro de colonne servant _ à trouver la 1ere ligne disponible ' PosColValeur est le numéro de la colonne _ dans laquelle il faut placer la valeur ' Valeur est la valeur à insérer dans la cellule
Dim Cellule As Range
Set Cellule = _ Sheets(Feuille).Range(Cells(65536, PosColVerif), _ Cells(65536, PosColVerif).End(xlUp)) Sheets(Feuille).Cells(Cellule.Row, PosColValeur) = Valeur End Sub
Pierre Qui Roule.. wrote:
Bonjour, Je cherche à écrire une procédure VBA qui - recherche la première ligne disponible dans une feuille - met une donnée dans une colonne précise de cette ligne, mais dont la position peut varier au cours du temps. La procédure doit fonctionner quelle que soit la position de cette colonne.
merci pour votre aide, Pierre
Bonjour
Voici quelque chose de paramétrable
Sub PlacerValeur(Feuille As String, PosColVerif As Integer, _
PosColValeur As Integer, Valeur As Variant)
' Feuille est le nom de la feuille souhaitée
' PosColVerif est le numéro de colonne servant _
à trouver la 1ere ligne disponible
' PosColValeur est le numéro de la colonne _
dans laquelle il faut placer la valeur
' Valeur est la valeur à insérer dans la cellule
Dim Cellule As Range
Set Cellule = _
Sheets(Feuille).Range(Cells(65536, PosColVerif), _
Cells(65536, PosColVerif).End(xlUp))
Sheets(Feuille).Cells(Cellule.Row, PosColValeur) = Valeur
End Sub
Pierre Qui Roule.. wrote:
Bonjour,
Je cherche à écrire une procédure VBA qui
- recherche la première ligne disponible dans une feuille
- met une donnée dans une colonne précise de cette ligne, mais dont la
position peut varier
au cours du temps.
La procédure doit fonctionner quelle que soit la position de cette
colonne.
Sub PlacerValeur(Feuille As String, PosColVerif As Integer, _ PosColValeur As Integer, Valeur As Variant) ' Feuille est le nom de la feuille souhaitée ' PosColVerif est le numéro de colonne servant _ à trouver la 1ere ligne disponible ' PosColValeur est le numéro de la colonne _ dans laquelle il faut placer la valeur ' Valeur est la valeur à insérer dans la cellule
Dim Cellule As Range
Set Cellule = _ Sheets(Feuille).Range(Cells(65536, PosColVerif), _ Cells(65536, PosColVerif).End(xlUp)) Sheets(Feuille).Cells(Cellule.Row, PosColValeur) = Valeur End Sub
Pierre Qui Roule.. wrote:
Bonjour, Je cherche à écrire une procédure VBA qui - recherche la première ligne disponible dans une feuille - met une donnée dans une colonne précise de cette ligne, mais dont la position peut varier au cours du temps. La procédure doit fonctionner quelle que soit la position de cette colonne.
merci pour votre aide, Pierre
Pierre Qui Roule..
merci pour la réponse, mais mon problème essentiel est que je ne voudrais pas avoir à modifier le code du programme appelant au cas où la colonne à modifier changerait de position. N'est-il pas possible de faire quelque chose avec une colonne "nommée"?
merci d'avance Pierre
merci pour la réponse, mais mon problème essentiel est que je ne voudrais
pas avoir à modifier le code du programme appelant au cas où la colonne à
modifier changerait de position. N'est-il pas possible de faire quelque
chose avec une colonne "nommée"?
merci pour la réponse, mais mon problème essentiel est que je ne voudrais pas avoir à modifier le code du programme appelant au cas où la colonne à modifier changerait de position. N'est-il pas possible de faire quelque chose avec une colonne "nommée"?
merci d'avance Pierre
Pierre Fauconnier
Rien ne 't'empêche d'appeler cette procédure avec des arguments faisant appel à des plages nommées Ainsi, si ta colonne de test et ta feuille sont toujours les mêmes, et que seule la colonne de la cellule d'arrivée change, tu peux appeler la procédure renseignée de la façon suivante :
-- Cela convient-il? ---- Pierre Fauconnier "C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..." (remplacer NOSPAM par pfi pour me répondre. Merci)
---
Pierre Qui Roule.. wrote:
merci pour la réponse, mais mon problème essentiel est que je ne voudrais pas avoir à modifier le code du programme appelant au cas où la colonne à modifier changerait de position. N'est-il pas possible de faire quelque chose avec une colonne "nommée"?
merci d'avance Pierre
Rien ne 't'empêche d'appeler cette procédure avec des arguments faisant
appel à des plages nommées
Ainsi, si ta colonne de test et ta feuille sont toujours les mêmes, et que
seule la colonne de la cellule d'arrivée change, tu peux appeler la
procédure renseignée de la façon suivante :
--
Cela convient-il?
----
Pierre Fauconnier
"C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..."
(remplacer NOSPAM par pfi pour me répondre. Merci)
---
Pierre Qui Roule.. wrote:
merci pour la réponse, mais mon problème essentiel est que je ne
voudrais pas avoir à modifier le code du programme appelant au cas où
la colonne à modifier changerait de position. N'est-il pas possible
de faire quelque chose avec une colonne "nommée"?
Rien ne 't'empêche d'appeler cette procédure avec des arguments faisant appel à des plages nommées Ainsi, si ta colonne de test et ta feuille sont toujours les mêmes, et que seule la colonne de la cellule d'arrivée change, tu peux appeler la procédure renseignée de la façon suivante :
-- Cela convient-il? ---- Pierre Fauconnier "C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..." (remplacer NOSPAM par pfi pour me répondre. Merci)
---
Pierre Qui Roule.. wrote:
merci pour la réponse, mais mon problème essentiel est que je ne voudrais pas avoir à modifier le code du programme appelant au cas où la colonne à modifier changerait de position. N'est-il pas possible de faire quelque chose avec une colonne "nommée"?