Champ Vide à mettre à zéro
Résolu/Fermé
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
-
10 nov. 2012 à 14:42
rjl Messages postés 543 Date d'inscription mardi 16 mars 2004 Statut Membre Dernière intervention 25 mai 2019 - 16 nov. 2012 à 11:47
rjl Messages postés 543 Date d'inscription mardi 16 mars 2004 Statut Membre Dernière intervention 25 mai 2019 - 16 nov. 2012 à 11:47
A voir également:
- Sql remplacer null par vide
- Remplacer disque dur par ssd - Guide
- Remplacer par word - Guide
- Supprimer page word vide - Guide
- Coeur vide ✓ - Forum Facebook
- Remplacer #div/0 par vide ✓ - Forum Excel
8 réponses
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
10 nov. 2012 à 22:39
10 nov. 2012 à 22:39
Bonjour
En mode creation , dans ta table, dans les propriétes du champ, tu le declare en numerique
En mode creation , dans ta table, dans les propriétes du champ, tu le declare en numerique
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
49
11 nov. 2012 à 10:04
11 nov. 2012 à 10:04
Bonjour castours et merci de ta réponse,
Oui, bien sûr, je le décris en numérique mais, c'est une table dont j'ai hérité et elle ne l'était pas à l'origine ! Pour autant, j'ai fait des essais avec texte pensant qu'il me serait alors plus facile de corriger, particulièrement pour vide.
De fait, pour moi ce champs est le plus généralement vide car lorsque dans la table je veux filtrer, Vide est proposé et me ramène beaucoup de lignes !
Curieusement, si je fais un tri direct de la table tout se trouve bien classé, y compris les lignes avec champ vide alors que par ma requêe, ils sont ignorés ou plus précisément, les lignes n'apparaissent pas ni à l'écran, ni en comptage !
Merci de tes idées si ça t'inspire
Oui, bien sûr, je le décris en numérique mais, c'est une table dont j'ai hérité et elle ne l'était pas à l'origine ! Pour autant, j'ai fait des essais avec texte pensant qu'il me serait alors plus facile de corriger, particulièrement pour vide.
De fait, pour moi ce champs est le plus généralement vide car lorsque dans la table je veux filtrer, Vide est proposé et me ramène beaucoup de lignes !
Curieusement, si je fais un tri direct de la table tout se trouve bien classé, y compris les lignes avec champ vide alors que par ma requêe, ils sont ignorés ou plus précisément, les lignes n'apparaissent pas ni à l'écran, ni en comptage !
Merci de tes idées si ça t'inspire
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
Modifié par castours le 11/11/2012 à 11:43
Modifié par castours le 11/11/2012 à 11:43
bonjour
Si tu veux recuperer les champs vides, dans un requete conditionWhere utilise Est Null ou N'est pas null. C'est cette synthaxe qu'il faut uitliser.
Tu modifies cette requete en creation de table.
Un fois cela fait, soit tu le transformes en numerique valeur 0 par defaut. ou tu recrées un nouveau directement en numerique.
Actuellement ton champ est texte?
je ne sais pas si access peut traiter un million de lignes?
Quelle version access ?
Si tu veux, peux tu mettre table sur le site avec cjoint.com
Si tu veux recuperer les champs vides, dans un requete conditionWhere utilise Est Null ou N'est pas null. C'est cette synthaxe qu'il faut uitliser.
Tu modifies cette requete en creation de table.
Un fois cela fait, soit tu le transformes en numerique valeur 0 par defaut. ou tu recrées un nouveau directement en numerique.
Actuellement ton champ est texte?
je ne sais pas si access peut traiter un million de lignes?
Quelle version access ?
Si tu veux, peux tu mettre table sur le site avec cjoint.com
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
49
11 nov. 2012 à 11:50
11 nov. 2012 à 11:50
Pour une meilleure compréhension du problème, je présente les quelques premiers enregistrements de la table (en réalité 119 000 en extrait de la table complète supérieure à 1 000 000 de lignes !).
Alors, bien sûr, je sais ce qui ne va pas... sans savoir le résoudre !
[URL=https://imageshack.com/][IMG]http://img11.imageshack.us/img11/2320/imagtable.jpg[/IMG][/URL]
En fait, les enregistrements sont ignorés dès lors que je teste un champ apparemment vide !
Pour autant, je ne pouvais rester sans solution pour ce test (119 000 lignes) et j'ai dans un premier temps supprimé le test qui me fait plonger en cherchant à remplacer ces champs "vides" par zéro ! Même problème, les sélections pour des codes > 99 ne m'intéressant pas, j'ai pu remplacer ces codes par zéro... mais même problème, les lignes contenant des "vides" étaient abandonnées dès que je testait un champs d'une des 6 colonnes participant à la sélection ! Comme dans cet extrait, le Champ14 ne contient aucune valeur ma sélection était de 0 enregistrements contre 37 000 prévus !
Car la sélection, j'ai pu la faire sur l'échantillon mais, certes, de manière bestiale !
Pour cela, j'ai filtré mon fichier successivement avec chacune des 6 colonnes de sélection en ne récupérant que les champs réputés "vides" ou inférieurs à 100 (cochant chacune des 99 valeurs de chaque champ concerné).
C'est lourd, ça a fonctionné sur cet extrait sans résoudre mon problème de fond !
J'espère que cet éclairage sera constructif.
Bon dimanche et encore merci
@Bientôt RJL2b11
Alors, bien sûr, je sais ce qui ne va pas... sans savoir le résoudre !
[URL=https://imageshack.com/][IMG]http://img11.imageshack.us/img11/2320/imagtable.jpg[/IMG][/URL]
En fait, les enregistrements sont ignorés dès lors que je teste un champ apparemment vide !
Pour autant, je ne pouvais rester sans solution pour ce test (119 000 lignes) et j'ai dans un premier temps supprimé le test qui me fait plonger en cherchant à remplacer ces champs "vides" par zéro ! Même problème, les sélections pour des codes > 99 ne m'intéressant pas, j'ai pu remplacer ces codes par zéro... mais même problème, les lignes contenant des "vides" étaient abandonnées dès que je testait un champs d'une des 6 colonnes participant à la sélection ! Comme dans cet extrait, le Champ14 ne contient aucune valeur ma sélection était de 0 enregistrements contre 37 000 prévus !
Car la sélection, j'ai pu la faire sur l'échantillon mais, certes, de manière bestiale !
Pour cela, j'ai filtré mon fichier successivement avec chacune des 6 colonnes de sélection en ne récupérant que les champs réputés "vides" ou inférieurs à 100 (cochant chacune des 99 valeurs de chaque champ concerné).
C'est lourd, ça a fonctionné sur cet extrait sans résoudre mon problème de fond !
J'espère que cet éclairage sera constructif.
Bon dimanche et encore merci
@Bientôt RJL2b11
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
11 nov. 2012 à 18:00
11 nov. 2012 à 18:00
Bonjour
Tu as mis une image. Avec cela je ne peux pas voir les propriétées des champs.
Faits une copie de ta base avec seulement quelques enregistrements sur la table en question. Compresse la en zip puis met la sur le site avec cjoint..On comprend mieux ton probleme
Tu as mis une image. Avec cela je ne peux pas voir les propriétées des champs.
Faits une copie de ta base avec seulement quelques enregistrements sur la table en question. Compresse la en zip puis met la sur le site avec cjoint..On comprend mieux ton probleme
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
11 nov. 2012 à 18:27
11 nov. 2012 à 18:27
essaie de voire avec la taille du champ numerique.
Si ton reçoit des nombres elevés et avec des decimales, il se peut que ton ne pas assez grand.
Met le au maximum , , c'est a dire reel doublepour un champ numerique.
Lles valeurs saisies sont elles bien en numerique et nom pas en monétaire ou vice ver çà
Si ton reçoit des nombres elevés et avec des decimales, il se peut que ton ne pas assez grand.
Met le au maximum , , c'est a dire reel doublepour un champ numerique.
Lles valeurs saisies sont elles bien en numerique et nom pas en monétaire ou vice ver çà
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
49
Modifié par rjl le 11/11/2012 à 16:56
Modifié par rjl le 11/11/2012 à 16:56
Bonjour,
Les champs qui posent ce problème sont bien en numérique ; j'ai essayé de diverses manières avec EstNull mais les lignes ainsi testées ne sont pas sélectionnées et même comme ignorées ! J'ai alors tenté avec EstVide puisque ça fonctionne en filtre direct (sélection des lignes notées "Vides") mais, à ma grande surprise, ça ne fonctionne pas en requête ! J'ai tenté sans succès (pour les mêmes raisons) de transformer en zéro mes champs vides... mais ils sont tout autant ignorés (Nb d'enregistrements à modifier : 0) !
J'ai 119 000 lignes en jeu d'essai et plus de 1 000 000 en réel.
Un "détail" bloque le fonctionnement normal mais quoi ?
@+ et bien sûr encore merci. RJL2b11
Les champs qui posent ce problème sont bien en numérique ; j'ai essayé de diverses manières avec EstNull mais les lignes ainsi testées ne sont pas sélectionnées et même comme ignorées ! J'ai alors tenté avec EstVide puisque ça fonctionne en filtre direct (sélection des lignes notées "Vides") mais, à ma grande surprise, ça ne fonctionne pas en requête ! J'ai tenté sans succès (pour les mêmes raisons) de transformer en zéro mes champs vides... mais ils sont tout autant ignorés (Nb d'enregistrements à modifier : 0) !
J'ai 119 000 lignes en jeu d'essai et plus de 1 000 000 en réel.
Un "détail" bloque le fonctionnement normal mais quoi ?
@+ et bien sûr encore merci. RJL2b11
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
49
11 nov. 2012 à 22:23
11 nov. 2012 à 22:23
Bonsoir,
Grace à tes observations, j'ai pu corriger un problème majeur la sélection se fait en partie :
Ayant été longtemps déphasé d'Access, j'avais oublié des points essentiels pour sélectionner par Expr: les champs avec expression dont
Ce serait parfait... si je n'avais à reproduire cette sélection avec 5 autres champs (par Et) et là ça se gâte !
J'ai tenté avec le traitement normal mais aussi par SQL pour lequel je pensais que l'empilement serait plus facile mais rien n'a fonctionné !
J'ai aussi tenté sans succès de mettre des zéros pour les valeurs qui ne m'intéressaient pas (Null ou > 99) car ça me semblait aussi assez simple d'associer la sélection par Et de 6 tranches... mais je n'avais pas des choix heureux ce jour et là encore... loupé !
Je continue encore à chercher un peu mais referai appel si je n'aboutis vraiment pas !
@ bientôt donc que ce soit pour un appui ou dire comment j'ai résolu ma difficulté.
Encore merci de ton appui RJL2b11
Grace à tes observations, j'ai pu corriger un problème majeur la sélection se fait en partie :
Ayant été longtemps déphasé d'Access, j'avais oublié des points essentiels pour sélectionner par Expr: les champs avec expression dont
Expr:EstNull([Champ14])avec Vrai en critère associé à un test de valeur en Ou donc plus classique et simplement installé sur la ligne suivante dans sa propre colonne.
Ce serait parfait... si je n'avais à reproduire cette sélection avec 5 autres champs (par Et) et là ça se gâte !
J'ai tenté avec le traitement normal mais aussi par SQL pour lequel je pensais que l'empilement serait plus facile mais rien n'a fonctionné !
J'ai aussi tenté sans succès de mettre des zéros pour les valeurs qui ne m'intéressaient pas (Null ou > 99) car ça me semblait aussi assez simple d'associer la sélection par Et de 6 tranches... mais je n'avais pas des choix heureux ce jour et là encore... loupé !
Je continue encore à chercher un peu mais referai appel si je n'aboutis vraiment pas !
@ bientôt donc que ce soit pour un appui ou dire comment j'ai résolu ma difficulté.
Encore merci de ton appui RJL2b11
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
49
Modifié par rjl le 12/11/2012 à 14:55
Modifié par rjl le 12/11/2012 à 14:55
Bonjour castours,
Je craignais de devoir revenir pour redemander de l'aide !
J'ai cherché à travers les Tutos, les Forums et fait des essais multiples... sans succès !
J'ai 6 champs (toujours les mêmes) ; je souhaite passer à 0 (codif impossible permettant un choix facile par la suite) chaque champ lorsqu'il EstNull.
[URL=https://imageshack.com/][IMG]http://img687.imageshack.us/img687/9944/imagtable2b12.jpg[/IMG][/URL]
Ce n'est qu'un exemple mais une des réponses les plus fréquentes est un nom réputé invalide (j'ai essayé sans le nom de table, ni en ligne 2 (Table), ni en composante du nom ([Tout][....)
Bien entendu, j'ai aussi tenté sans succès de mettre directement le nom de la table en deuxième ligne ou encore de le supprimer du contenu du nom testé : rien n'y fait !
Merci de ton aide si tu vois comment je peux me sortir de ce mauvais pas !
@Bientôt RJL2b12
Je craignais de devoir revenir pour redemander de l'aide !
J'ai cherché à travers les Tutos, les Forums et fait des essais multiples... sans succès !
J'ai 6 champs (toujours les mêmes) ; je souhaite passer à 0 (codif impossible permettant un choix facile par la suite) chaque champ lorsqu'il EstNull.
[URL=https://imageshack.com/][IMG]http://img687.imageshack.us/img687/9944/imagtable2b12.jpg[/IMG][/URL]
Ce n'est qu'un exemple mais une des réponses les plus fréquentes est un nom réputé invalide (j'ai essayé sans le nom de table, ni en ligne 2 (Table), ni en composante du nom ([Tout][....)
Bien entendu, j'ai aussi tenté sans succès de mettre directement le nom de la table en deuxième ligne ou encore de le supprimer du contenu du nom testé : rien n'y fait !
Merci de ton aide si tu vois comment je peux me sortir de ce mauvais pas !
@Bientôt RJL2b12
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
13 nov. 2012 à 11:47
13 nov. 2012 à 11:47
Bonjour
Vue les images cela ne peut pas fonctionner
Il faut faire une requete avec le nom de la table et chaque nom de champ
Met ta base avec cjoint
cela ser plus facile
Vue les images cela ne peut pas fonctionner
Il faut faire une requete avec le nom de la table et chaque nom de champ
Met ta base avec cjoint
cela ser plus facile
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
13 nov. 2012 à 11:57
13 nov. 2012 à 11:57
https://www.cjoint.com/?BKnl2UmNBP8
Voici un exemple dans une requete de recherche des null sur le code postal
Voici un exemple dans une requete de recherche des null sur le code postal
rjl
Messages postés
543
Date d'inscription
mardi 16 mars 2004
Statut
Membre
Dernière intervention
25 mai 2019
49
16 nov. 2012 à 11:47
16 nov. 2012 à 11:47
Bonjour castours,
Je ne t'avais pas oublié mais coincé entre mes propres problèmes et ceux de mon fils que j'appuie pour ce travail, je prends parfois du temps (plus encore lorsque j'y ajoute la perte de ma réponse préparée à une heure bien tardive et non reprise au moment !).
Un dernier exemple m'a permis de finaliser ce travail (à mon niveau). En pratique, je confondais Est Null avec EstNull() qui m'imposait de mettre le nom d'un champ et alors, plus rien ne collais !
J'ai calqué simplement l'exemple d'où une réponse immédiate répondant exactement à la demande : [URL=https://imageshack.com/][IMG]http://img9.imageshack.us/img9/3261/img2b131a.jpg[/IMG][/URL]
Du coup, j'ai abandonné complètement le Nz qui m'imposait une seconde requête pour la sélection même si celle-ci était rapide, voire, ensuite, un complément pour supprimer les zéros ne simplifiant pas la lecture.
Un grand merci encore et bon week-end RJL2b16
Je ne t'avais pas oublié mais coincé entre mes propres problèmes et ceux de mon fils que j'appuie pour ce travail, je prends parfois du temps (plus encore lorsque j'y ajoute la perte de ma réponse préparée à une heure bien tardive et non reprise au moment !).
Un dernier exemple m'a permis de finaliser ce travail (à mon niveau). En pratique, je confondais Est Null avec EstNull() qui m'imposait de mettre le nom d'un champ et alors, plus rien ne collais !
J'ai calqué simplement l'exemple d'où une réponse immédiate répondant exactement à la demande : [URL=https://imageshack.com/][IMG]http://img9.imageshack.us/img9/3261/img2b131a.jpg[/IMG][/URL]
Du coup, j'ai abandonné complètement le Nz qui m'imposait une seconde requête pour la sélection même si celle-ci était rapide, voire, ensuite, un complément pour supprimer les zéros ne simplifiant pas la lecture.
Un grand merci encore et bon week-end RJL2b16