Effacement automatique de valeurs à l'intérieur de tables

Le
jymgo
Bonsoir ou bonjour

Y a t-il un moyen rapide d'effacer le contenu de certains champs dans une ou
plusieurs tables ??? je m'explique :

Lorsque j'importe une feuille XL, comme l'import d'une cellule vide ne
fonctionne pas, je demande à XL de remplacer le vide par '999999'.

Donc : Y a t-il un code ou une commande qui permette d'effacer, dans une
table, toutes les cellules qui contiennent 999999 et qui sont, par nature
aléatoire.

(vu le caractère atypique du nombre, peu de risque d'effacer un résultat
valide).
Je vous remercie pour vos proposition
Jymgo
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
Francis SLAWNY
Le #20319011
Pour effacer un champ donné d'une table donnée : requête mise à jour
exemple :

UPDATE ANIMATEURS SET ANIMATEURS.LIEU = Null
WHERE (((ANIMATEURS.LIEU)="siège"));

Si on cherche dans toutes les tables et tous les champs, boucle emboitées :
(à adapter)
Function Mise_A_null_Champs(contenu)
On Error Resume Next
Dim Db As Database
Dim Tb As TableDef
Dim Ch As Field
Set Db = CurrentDb
For Each Tb In Db.TableDefs
NomTab = Tb.Name
For Each Ch In Tb.Fields
NomChamp = Ch.Name
NomChamp = NomTab & "." & NomChamp
req = " UPDATE " & NomTab & " set " & NomChamp & " = null "
req = req & "WHERE (((" & NomChamp & ")=" & Chr(34) & contenu & Chr(34) &
"));"
Debug.Print req
DoCmd.RunSQL req
Next
Next
End Function

FS




"jymgo"
Bonsoir ou bonjour

Y a t-il un moyen rapide d'effacer le contenu de certains champs dans une
ou
plusieurs tables ??? je m'explique :

Lorsque j'importe une feuille XL, comme l'import d'une cellule vide ne
fonctionne pas, je demande à XL de remplacer le vide par '999999'.

Donc : Y a t-il un code ou une commande qui permette d'effacer, dans une
table, toutes les cellules qui contiennent 999999 et qui sont, par nature
aléatoire.

(vu le caractère atypique du nombre, peu de risque d'effacer un résultat
valide).
Je vous remercie pour vos proposition
Jymgo


jymgo
Le #20332291
Bonjour
Merci beaucoup pour le tuyau. j'ai en partie résolu mon problème.
Crdt
Jymgo

"Francis SLAWNY" a écrit :

Pour effacer un champ donné d'une table donnée : requête mise à jour
exemple :

UPDATE ANIMATEURS SET ANIMATEURS.LIEU = Null
WHERE (((ANIMATEURS.LIEU)="siège"));

Si on cherche dans toutes les tables et tous les champs, boucle emboitées :
(à adapter)
Function Mise_A_null_Champs(contenu)
On Error Resume Next
Dim Db As Database
Dim Tb As TableDef
Dim Ch As Field
Set Db = CurrentDb
For Each Tb In Db.TableDefs
NomTab = Tb.Name
For Each Ch In Tb.Fields
NomChamp = Ch.Name
NomChamp = NomTab & "." & NomChamp
req = " UPDATE " & NomTab & " set " & NomChamp & " = null "
req = req & "WHERE (((" & NomChamp & ")=" & Chr(34) & contenu & Chr(34) &
"));"
Debug.Print req
DoCmd.RunSQL req
Next
Next
End Function

FS




"jymgo"
> Bonsoir ou bonjour
>
> Y a t-il un moyen rapide d'effacer le contenu de certains champs dans une
> ou
> plusieurs tables ??? je m'explique :
>
> Lorsque j'importe une feuille XL, comme l'import d'une cellule vide ne
> fonctionne pas, je demande à XL de remplacer le vide par '999999'.
>
> Donc : Y a t-il un code ou une commande qui permette d'effacer, dans une
> table, toutes les cellules qui contiennent 999999 et qui sont, par nature
> aléatoire.
>
> (vu le caractère atypique du nombre, peu de risque d'effacer un résultat
> valide).
> Je vous remercie pour vos proposition
> Jymgo





Publicité
Poster une réponse
Anonyme