Publicité
+ Répondre à la discussion
Page 1 sur 2 12 DernièreDernière
Affichage des résultats 1 à 20 sur 29
  1. #1
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut Format cellule avec rechercheV apres liaison access

    Bonjour,

    sur un fichier excel j'importe des données venants de SAP sur une feuille et sur une autre feuille j'ai une liaison avec une requete access, quand je fait une rechercheV pour croisée les 2 feuilles ça ne marche pas.

    Sur la feuille access la colonne ou je fait ma recherche est au format standard avec 8 chiffres, l'affichage est a gauche.
    Quand je vais dans l'une des cellules, je me met a droite du texte et je fait juste "enter", et la par miracle l'affichage passe a droite et mon rechercheV marche, pas a 100% mais il me trouve 90% des champs que je recherche.

    J'ai essayer plusieurs format de cellule mais rien n'y fait sauf le fait le faire "enter" dans chaque cellule, ce qui n'est pas pratique du tout.

    Si quelqu'un a une solution, merci de votre aide.

  2. #2
    Membre chevronné
    Inscrit en
    juin 2007
    Messages
    662
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 662
    Points : 659
    Points
    659

    Par défaut

    Bonjour,

    Il peut y avoir plusieurs raisons, difficile à préciser sans avoir le fichier sous les yeux..

    Celle la plus souvent rencontrée est l'espace (séparateur de milliers).

  3. #3
    Expert Confirmé
    Inscrit en
    mai 2005
    Messages
    3 419
    Détails du profil
    Informations forums :
    Inscription : mai 2005
    Messages : 3 419
    Points : 3 819
    Points
    3 819

    Par défaut

    essayes ça

    selection des données sap
    édition copier
    édition collage spécial valeur
    Elle est pas belle la vie ?

  4. #4
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par ullan Voir le message
    Bonjour,

    Il peut y avoir plusieurs raisons, difficile à préciser sans avoir le fichier sous les yeux..

    Celle la plus souvent rencontrée est l'espace (séparateur de milliers).
    Je ne peux pas envoyer le fichier car il y a des données perso des agents de ma boite.

    Dans ce champ il n'y a pas de séparateur de milliers c'est un chiffre du style "60665161".

    Si tu veux vraiment regarder mon fichier je peux eventuellement préparé une version light.

    Merci de ta réponse.

  5. #5
    Membre chevronné
    Inscrit en
    juin 2007
    Messages
    662
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 662
    Points : 659
    Points
    659

    Par défaut

    Re,

    Quelques lignes suffisent, et modifie les noms.

  6. #6
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par random Voir le message
    essayes ça

    selection des données sap
    édition copier
    édition collage spécial valeur

    ça ne change rien
    le probleme vient plutot de la liaison avec access il me semble

  7. #7
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par ullan Voir le message
    Re,

    Quelques lignes suffisent, et modifie les noms.

    je joint le fichier

    http://www.cybervulcans.net/upload/f...calcul HMO.xls

    merci de ton aide

  8. #8
    Expert Confirmé Sénior
    Avatar de jacques_jean
    Homme Profil pro Jacques THÉRY
    Congés payés à durée indéterminée
    Inscrit en
    janvier 2006
    Messages
    3 647
    Détails du profil
    Informations personnelles :
    Nom : Homme Jacques THÉRY
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Congés payés à durée indéterminée

    Informations forums :
    Inscription : janvier 2006
    Messages : 3 647
    Points : 11 168
    Points
    11 168

    Par défaut

    Bonjour Vulcain91,

    Une solution qui n'est peut-être pas la meilleure mais qui est simple :

    Ce code dans votre feuille "Import Access" :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Mef()
    Dim i As Long, mv As Long, dl As Long
     
    dl = Range("A65536").End(xlUp).Row
       For i = 2 To dl
      mv = Cells(i, 1)
       Cells(i, 1).ClearContents
       Cells(i, 1) = mv
    Next i
     
    End Sub

  9. #9
    Membre chevronné
    Inscrit en
    juin 2007
    Messages
    662
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 662
    Points : 659
    Points
    659

    Par défaut

    Bonjour,

    Aucun problème, le RECHERCHEV fonctionne (LISTE AGENTS), tant en faisant référence à la cellule (par exemple : B3) qu'à son contenu (par exemple : 31488018)
    J'ai étiré ces deux formules et aucun ennui.

    Si tu avais mis ta formule sur la pièce jointe, ou précisé où il fallait la mettre, peut-être aurais-je pu constater une quelconque anomalie, mais ici, rien.

  10. #10
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par jacques_jean Voir le message
    Bonjour Vulcain91,

    Une solution qui n'est peut-être pas la meilleure mais qui est simple :

    Ce code dans votre feuille "Import Access" :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Mef()
    Dim i As Long, mv As Long, dl As Long
     
    dl = Range("A65536").End(xlUp).Row
       For i = 2 To dl
      mv = Cells(i, 1)
       Cells(i, 1).ClearContents
       Cells(i, 1) = mv
    Next i
     
    End Sub
    C'est déjà pas mal comme macro, ça aide bien même si ça résout pas mon problème a 100%.
    tu automatise ce que je faisais a la mano.
    La macro est très lente, il y a une raison ?
    je suis nul en VBA tu pourrais m'expliquer cette macro STP

    MErci de ton aide

  11. #11
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par ullan Voir le message
    Bonjour,

    Aucun problème, le RECHERCHEV fonctionne (LISTE AGENTS), tant en faisant référence à la cellule (par exemple : B3) qu'à son contenu (par exemple : 31488018)
    J'ai étiré ces deux formules et aucun ennui.

    Si tu avais mis ta formule sur la pièce jointe, ou précisé où il fallait la mettre, peut-être aurais-je pu constater une quelconque anomalie, mais ici, rien.
    Effectivement la rechercheV marche super sur le champ "ATELIER" mais c'est sur les champs "CLASSE", "AVION", "SN", "DS" et "TAT" qu'il y a un bug sur la feuille "import" qui va chercher les infos sur la feuille "IMPORT ACCESS".

    Même si la macro de jacques_jean m'aide bien ça ne résout pas mon problème a 100%.

    Merci de prendre sur votre temps pour m'aider

    @+

  12. #12
    Expert Confirmé Sénior
    Avatar de jacques_jean
    Homme Profil pro Jacques THÉRY
    Congés payés à durée indéterminée
    Inscrit en
    janvier 2006
    Messages
    3 647
    Détails du profil
    Informations personnelles :
    Nom : Homme Jacques THÉRY
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Congés payés à durée indéterminée

    Informations forums :
    Inscription : janvier 2006
    Messages : 3 647
    Points : 11 168
    Points
    11 168

    Par défaut

    Re Vulcain91,

    Cette macro, même pour plusieurs milliers de lignes ne devrait prendre que 2 ou secondes.

    Je ne vois qu'une raison, à priori, pour qu'elle soit lente :

    vous avez de nombreuses formules dans la ou les feuilles ?

    Dans ce cas vous ajoutez après:

    Code :
    1
    2
    3
    4
    5
    Dim i As Long, mv As Long, dl As Long
    
     With Application
     .Calculation = xlManual
      End With
    et avant :
    Code :
    1
    2
    3
    4
    5
    6
    End Sub
    
    
    With Application
    .Calculation = xlAutomatic
    End With

  13. #13
    Membre chevronné
    Inscrit en
    juin 2007
    Messages
    662
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 662
    Points : 659
    Points
    659

    Par défaut

    Bonjour,

    C'est normal que cela ne marche pas !
    Et pour deux raisons :

    Dans la formule RECHERCHEV, feuille IMPORT, la plage de recherche est $A$2:$J$579 alors que dans la feuille IMPORT ACCESS la plage est $A$2:$J$639
    Des formules qui renvoient #N/A se situent sous la ligne 579

    Sous la feuille IMPORT ACCESS certaines cellules de la colonne A sont précédées d'une ' (apostrophe), donc format texte, bien que sous le menu Format / Cellule il y a Standard.
    Pour y remedier :
    copier une cellule vide
    sélectionner la colonne A de la feuille IMPORT ACCESS
    menu Edition / Collage spécial / addition / OK

    En appliquant ces deux petites corrections tous les messages d'erreur ont disparu.

  14. #14
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par ullan Voir le message
    Bonjour,

    C'est normal que cela ne marche pas !
    Et pour deux raisons :

    Dans la formule RECHERCHEV, feuille IMPORT, la plage de recherche est $A$2:$J$579 alors que dans la feuille IMPORT ACCESS la plage est $A$2:$J$639
    Des formules qui renvoient #N/A se situent sous la ligne 579

    Sous la feuille IMPORT ACCESS certaines cellules de la colonne A sont précédées d'une ' (apostrophe), donc format texte, bien que sous le menu Format / Cellule il y a Standard.
    Pour y remedier :
    copier une cellule vide
    sélectionner la colonne A de la feuille IMPORT ACCESS
    menu Edition / Collage spécial / addition / OK

    En appliquant ces deux petites corrections tous les messages d'erreur ont disparu.
    pour ce qui est de la plage de recherche je suis vraiment une buse, j'aurais du le voir moi même.

    Par contre je trouve aucune apostrophe dans la colonne A de la feuille IMPORT ACCESS .
    Ta methode du collage special marche bien mais me supprime ma liaison avec la requete Access, donc je vais essayer la macro de jacques_jean.

    Merci de votre aide

    @+

  15. #15
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par jacques_jean Voir le message
    Re Vulcain91,

    Cette macro, même pour plusieurs milliers de lignes ne devrait prendre que 2 ou secondes.

    Je ne vois qu'une raison, à priori, pour qu'elle soit lente :

    vous avez de nombreuses formules dans la ou les feuilles ?

    Dans ce cas vous ajoutez après:

    Code :
    1
    2
    3
    4
    5
    Dim i As Long, mv As Long, dl As Long
    
     With Application
     .Calculation = xlManual
      End With
    et avant :
    Code :
    1
    2
    3
    4
    5
    6
    End Sub
    
    
    With Application
    .Calculation = xlAutomatic
    End With
    J'ai quelques formules en effet mais pas enormement par contre c'est une liaison access, c'est peut etre la raison de la lenteur d'excécution ?

    J'ai pas compris comment je doit réecrire ma macro, désolé je suis nul en VBA.

    Merci @+

  16. #16
    Expert Confirmé Sénior
    Avatar de jacques_jean
    Homme Profil pro Jacques THÉRY
    Congés payés à durée indéterminée
    Inscrit en
    janvier 2006
    Messages
    3 647
    Détails du profil
    Informations personnelles :
    Nom : Homme Jacques THÉRY
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Congés payés à durée indéterminée

    Informations forums :
    Inscription : janvier 2006
    Messages : 3 647
    Points : 11 168
    Points
    11 168

    Par défaut

    Bonjour Vulcain91,

    A toutes fins utiles (car d'après votre réponse ce n'est peut-être pas ce que je pensais, mais cela peut servir dans un autre cas) :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Sub Mef()
    Dim i As Long, mv As Long, dl As Long
    With Application
     .Calculation = xlManual
      End With
     
    dl = Range("A65536").End(xlUp).Row
       For i = 2 To dl
      mv = Cells(i, 1)
       Cells(i, 1).ClearContents
       Cells(i, 1) = mv
    Next i
     
    With Application
    .Calculation = xlAutomatic
    End With
    End Sub

  17. #17
    Expert Confirmé Sénior
    Avatar de jacques_jean
    Homme Profil pro Jacques THÉRY
    Congés payés à durée indéterminée
    Inscrit en
    janvier 2006
    Messages
    3 647
    Détails du profil
    Informations personnelles :
    Nom : Homme Jacques THÉRY
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Congés payés à durée indéterminée

    Informations forums :
    Inscription : janvier 2006
    Messages : 3 647
    Points : 11 168
    Points
    11 168

    Par défaut

    En fonction des réponses de Ullan et de Random, je viens de regarder d'un peu plus près votre fichier.

    1) vous dîtes qu'il contient quelques formules. S'il s'agit d'un extrait le nombre de formules sans être "énorme" est déjà quand même important d'autant plus que RECHERCHEV n'est pas la même chose que A2*B2. Cela pour expliquer le temps de traitement en calcul automatique.

    2) pouvez-vous préciser un exemple de ce que vous considérez comme n'ayant pas fonctionné dans RECHERCHEV.

  18. #18
    Invité de passage
    Inscrit en
    février 2007
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : février 2007
    Messages : 24
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par jacques_jean Voir le message
    En fonction des réponses de Ullan et de Random, je viens de regarder d'un peu plus près votre fichier.

    1) vous dîtes qu'il contient quelques formules. S'il s'agit d'un extrait le nombre de formules sans être "énorme" est déjà quand même important d'autant plus que RECHERCHEV n'est pas la même chose que A2*B2. Cela pour expliquer le temps de traitement en calcul automatique.

    2) pouvez-vous préciser un exemple de ce que vous considérez comme n'ayant pas fonctionné dans RECHERCHEV.
    en fait maintenant tous marche trés bien grace a votre macro et aux conseils d'Ullan

    mais je comprend pas pour il faut aller dans les cellules et faire "entrée" a chaque fois, c'est un probleme d'import qui génére ce "bug" ?

    En tous cas merci de votre aide a vous deux

  19. #19
    Membre chevronné
    Inscrit en
    juin 2007
    Messages
    662
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 662
    Points : 659
    Points
    659

    Par défaut

    Re,

    En informatique, dans la plupart des cas, le bug se trouve entre la clavier et la chaise.

    Il s'agit simplement d'une différence de format.
    L'import est un format texte.
    Le code dans la formule est un format nombre.

    Je t'avais proposé de modifier le format texte en format nombre.
    Tu m'as dit que cela n'est pas possible.
    Donc, il suffit de faire le contraire : modifier le format nombre en format texte.

  20. #20
    Expert Confirmé Sénior
    Avatar de jacques_jean
    Homme Profil pro Jacques THÉRY
    Congés payés à durée indéterminée
    Inscrit en
    janvier 2006
    Messages
    3 647
    Détails du profil
    Informations personnelles :
    Nom : Homme Jacques THÉRY
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Congés payés à durée indéterminée

    Informations forums :
    Inscription : janvier 2006
    Messages : 3 647
    Points : 11 168
    Points
    11 168

    Par défaut

    Re Vulcain91,

    Comme vous le dit Ullan, vous importez un fichier texte.

    Mais il n'existe pas qu'un seul type de fichier texte.

    En général les logiciels de gestion de bases de données ont leur propre format mais il offrent également des possibilités d'exportation de fichiers permettant l'importation dans des formats "Standards" (*.txt, *.csv., *.asc) et il est préférable d'exporter les données dans un de ces types de fichiers avant de l'importer dans un autre logiciel.

    En l'occurrence Excel ne sait pas traiter automatiquement les données numériques enregistrées en format texte alors que dans d'autres cas il le fait très bien.

    Exemple :
    -sur la feuille "Import" le N° de commande 60563348 se trouve dans une cellule au format "Standard" et s'affiche automatiquement à droite (affichage par défaut des nombres)

    -ce même N° de commande, sur la feuille "Import Access", se trouve dans une cellule au même format et pourtant avec l'affichage par défaut du texte (à gauche).

    -tant que la colonne n'a pas été retraitée (afficher les N° de commande sur "Import Access" au format nombre ou sur "Import" au format texte la fonction RECHERCHEV n'affecte pas les données (affichage de #N/A dans la cellule).

    C'est un peu compliqué à expliquer et si jamais j'ai totalement ou partiellement tort, je pense qu'un plus grand spécialiste pourra mieux vous expliquer.

    Cela dit vous écrivez :

    mais je comprend pas pour il faut aller dans les cellules et faire "entrée" a chaque fois, c'est un probleme d'import qui génére ce "bug" ?
    J'ose espérer que vous ne le faites plus manuellement ?

    D'autre part dans votre exemple il apparaît dans certaines cellules de la feuille "Import" contenant la formule RECHERCHEV le résultat "#N/A" pour une autre raison que celle évoquée ci-dessus : votre plage de recherche n'inclus pas toute la plage contenue dans "IMPORT ACCESS".

    On peut supposer que vous importez régulièrement cette base de données et que le nombre d'enregistrements varie d'une importation à l'autre.

    Si c'est le cas vous pouvez nous le préciser, il existe différentes solutions permettant de ne pas être obligé de modifier la plage.

Liens sociaux

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
  •