Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Excel

Excel Forum d'entraide sur Excel

Réponse
 
Outils de la discussion
Vieux 19/08/2008, 08h45   #1 (permalink)
Invité de passage
 
Date d'inscription: août 2008
Messages: 4
Par défaut Disparition de données

Bonjour à tous,alors en faite j'ai dans un fichier excel une feuille nommée "base de données", sur cette feuille diverses informations tel que le nom le prénom le numéro de passport la société etc...

Dans un autre fichier j'ai besoin de récupéré certaines colones de cette feuille "base de données" mais pas toutes, j'ai donc fait une requête SQL pour récupéré ces colones (avec excel on a pas besoin de la taper suffit de faire glisser les colones qu'on veut sa se fait tout seul) mais je me rend compte que pour la colone passport certaines cases restent vide alors que dans le fichier d'origine il y a bien un numéro, les format des cellules sont les mêmes (texte). J'ai vérifier la requête mais elle est la même pour toutes les colones.

Le plus bizarre est que si je vais dans le fichier d'origine "base de données" que je selectionne l'une des cases qui ne marche pas, je l'efface et je retape juste la même chose, ben quand j'actualise la requête dans mon autre fichiers cette fois-ci le numéro apparait ! J'aurais bien retaper tout les numéros mais y a genre 2000 Lignes.
J'aurai besoin d'une petite explication si quelqu'un peut m'aider, merci beaucoup à vous.

Dernière modification par Niaki ; 19/08/2008 à 09h26
Niaki est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 10h22   #2 (permalink)
Futur Membre du Club
 
Date d'inscription: mars 2008
Messages: 38
Par défaut

Bonjour Niaki,

Je ne suis pas sur d'avoir compris ta question. Pour moi, tu veux simplement copier une colonne (ex: passport) dans un autre fichier excel. Si c'est bien cela tu peut utiliser ce code, adapte a ton exemple:

Code :
Columns("A:A").Select
    Selection.Copy
    Windows("Book2").Activate
    'ouverture de ton autre fichier
        Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    'Collage special avec seulement la valeur de tes cellules
Si ce n'est pas ca, essaye de preciser ta question.

A+
Thomas S est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 10h40   #3 (permalink)
Responsable Excel
 
Avatar de SilkyRoad
 
Date d'inscription: août 2005
Messages: 3 109
Par défaut

bonjour

Citation:
je me rend compte que pour la colone passport certaines cases restent vide alors que dans le fichier d'origine il y a bien un numéro,
Les cellules contiennent sans doute des formats différents


Par défaut, le pilote ODBC analyse uniquement les 8 premières lignes du classeur fermé pour déterminer le type de données dans chaque colonne. Cela peut entrainer 2 types de problèmes:
1. Dans certains cas particuliers, les données exportées vers un classeur fermé peuvent etre tronquées.
Si, par exemple, les 8 premiers enregistrements d'un champ contiennent des données texte inférieures ou égale à 255 caractères, le champ sera considéré de type Texte. Si ensuite vous ajoutez des enregistrements de longueur plus importante ils seront tronqués.

http://support.microsoft.com/kb/189897/en-us

http://silkyroad.developpez.com/VBA/...ursFermes/#LII


bonne journée
michel
SilkyRoad est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 10h47   #4 (permalink)
Invité de passage
 
Date d'inscription: août 2008
Messages: 4
Par défaut yep

ce n'est pas vraiment ça que je demandais mais sa peut marcher, le seul inconvénient c'est que les deux fichiers doivent être ouvert, est il possible que le fichier dans lequelle je récupère les colones ne soit pas ouvert? ou alor qu'il l'ouvre qu'il récupère les données et qu'il le ferme c'est quasi instantané sa ne se vérai, je pense!
Niaki est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 10h51   #5 (permalink)
Invité de passage
 
Date d'inscription: août 2008
Messages: 4
Par défaut

Citation:
Envoyé par SilkyRoad Voir le message
Les cellules contiennent sans doute des formats différents
Ben justement toute la colone est au format texte est contiennent toutes des nombres de moin de 10 chiffre !

Merci pour vos réponse si rapide
Niaki est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 11h05   #6 (permalink)
Futur Membre du Club
 
Date d'inscription: mars 2008
Messages: 38
Par défaut

Citation:
Envoyé par Niaki Voir le message
ce n'est pas vraiment ça que je demandais mais sa peut marcher, le seul inconvénient c'est que les deux fichiers doivent être ouvert, est il possible que le fichier dans lequelle je récupère les colones ne soit pas ouvert? ou alor qu'il l'ouvre qu'il récupère les données et qu'il le ferme c'est quasi instantané sa ne se vérai, je pense!
C'est tout a fait possible.

Utilise ce code:

Code :
Workbooks.Open Filename:="C:\my work\passport.xls"
    Columns("A:A").Select
    Selection.Copy
    Windows("Book3").Activate
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Windows("passport.xls").Activate
    ActiveWindow.Close
Seul probleme avec cela, ton fichier source doit toujours rester a la meme place. Sinon ta macro ne la trouvera pas. C'est quasi instantanne, mais ton utilisateur vera tres certainement la manipulation.

A+
Thomas S est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 11h13   #7 (permalink)
Futur Membre du Club
 
Date d'inscription: mars 2008
Messages: 38
Par défaut

Desole, je n'ai pas mis d'explication sur mon code, mais je pense que tu aura compris.

passport.xls est le fichier source ou tu vas chercher ta colonne passport, tu l'ouvre et tu le referme a la fin. Le Book3 est ton fichier de reception de ta colonne.

A+
Thomas S est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 19/08/2008, 11h14   #8 (permalink)
Invité de passage
 
Date d'inscription: août 2008
Messages: 4
Par défaut merci

Merci beaucoup à toi sa marche juste comme il faut et à vrai dire je suis étudiant en programmation la je suis juste en job d'été dans une boite info, l'utilisateur c'est mon chef j'arrivai à faire tout ce qui me demander en VB alors y ma demander de faire un truc qu'il arriver pas mais la sa marche comme je veux je te remercie beaucoup !
Niaki est déconnecté   Envoyer un message privé Réponse avec citation
Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Excel

 
Offres d' emploi informatique sur Lesjeudis.com


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide