Base de données

Le
Fred C.
Salut,
Je cherche sous excel a bloquer la formule d’une cellule du type;
=INDEX(bdd_process;nb;COLONNE(INDIRECT(B17)))
Cette formule pointe vers une base de données excel. Cette base se
remplis automatiquement par une autre application.
Avec les formules comme ci-dessus j'extrais les données dans une feuill=
e
de validation (plus sexy que de travailler avec les nombreux
enregistrements de la base).

Mais je désire modifier les enregistrements lorsque les valeurs sont
erronées par exemple en saisissant directement dans la cellule.
La nouvelle valeur sera insérée directement dans la base de données=
et
la formule doit être restituée.

En gros,je résume:

Une cellule qui pointe vers une cellule et qui peut modifier cette cible.=


Merci pour votre aide
Enfin, j'espère être clair dans mes explications.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #5145641
Bonjour.
Mets la macro suivante dans le code de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Valeur, Col As Integer
If Target.Address Application.EnableEvents = False
Valeur = Target.Value
Target.FormulaLocal = "=INDEX(bdd_process;nb;COLONNE(INDIRECT(B17)))"
Col = Range([B17]).Column
Range("bdd_process")([nb], Col) = Valeur
Application.EnableEvents = True
End Sub

(J'ai supposé que la formule était en D8)
Cordialement.
Daniel
"Fred C." fntolv$n8m$
Salut,
Je cherche sous excel a bloquer la formule d’une cellule du type;
=INDEX(bdd_process;nb;COLONNE(INDIRECT(B17)))
Cette formule pointe vers une base de données excel. Cette base se
remplis automatiquement par une autre application.
Avec les formules comme ci-dessus j'extrais les données dans une feuille
de validation (plus sexy que de travailler avec les nombreux
enregistrements de la base).

Mais je désire modifier les enregistrements lorsque les valeurs sont
erronées par exemple en saisissant directement dans la cellule.
La nouvelle valeur sera insérée directement dans la base de données et
la formule doit être restituée.

En gros,je résume:

Une cellule qui pointe vers une cellule et qui peut modifier cette cible.

Merci pour votre aide...
Enfin, j'espère être clair dans mes explications....
Fred C.
Le #5283951
Merci, c'est tout a fait ce que je cherchais.
j'ai du modifier
Range("bdd_process")([nb], Col) = Valeur
car ça ne marche pas et je connaissais pas cette instruction !
Car bdd_process est le nom d'une plage dans une autre feuille...
Sheets("bdd_process").Range("bdd_process")([nb] + 1, Col).Value= Valeur

Salut


Bonjour.
Mets la macro suivante dans le code de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Valeur, Col As Integer
If Target.Address Application.EnableEvents = False
Valeur = Target.Value
Target.FormulaLocal = "=INDEX(bdd_process;nb;COLONNE(INDIRECT(B 17)))"
Col = Range([B17]).Column
Range("bdd_process")([nb], Col) = Valeur
Application.EnableEvents = True
End Sub

(J'ai supposé que la formule était en D8)
Cordialement.
Daniel
"Fred C." fntolv$n8m$
Salut,
Je cherche sous excel a bloquer la formule d’une cellule du type;
=INDEX(bdd_process;nb;COLONNE(INDIRECT(B17)))
Cette formule pointe vers une base de données excel. Cette base se
remplis automatiquement par une autre application.
Avec les formules comme ci-dessus j'extrais les données dans une feui lle
de validation (plus sexy que de travailler avec les nombreux
enregistrements de la base).

Mais je désire modifier les enregistrements lorsque les valeurs sont
erronées par exemple en saisissant directement dans la cellule.
La nouvelle valeur sera insérée directement dans la base de donné es et
la formule doit être restituée.

En gros,je résume:

Une cellule qui pointe vers une cellule et qui peut modifier cette cibl e.

Merci pour votre aide...
Enfin, j'espère être clair dans mes explications....




Publicité
Poster une réponse
Anonyme