1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

WD importation de gros fichier excel vers HFSQL ou le parcourir

Discussion dans 'Résolution problème & conseils' créé par elhacene, Oct 17, 2018.

  1. FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    Je viens de faire un test avec plus d’1 million de lignes :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Je me demande si ta colonne A n’a pas des trous ?
    Ma méthode de partir du haut, n’est peut-être pas la bonne.

    Dans la procédure ImporteXLSvXXL, en ligne 89 ajoute :
    Code (Text):
    Info(nLignes + " x " + nColonnes)
    Si le nombre de lignes ne correspond pas, c’est qu’il y a un trou dans tes numéros de tirage,
    et qu’il faut bien que je change ma façon de calculer le nombre lignes.
    Si ce n’est pas le cas, je ne vois pas encore d'où cela peut venir.

    De toute façon, je vais changer le mode de calcul du nombre de lignes.

    A+.
     
    elhacene et joker aiment ça.
  2. elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    :) Very good

    => Avec mon XLS de 600.000 lignes et 16 colonnes (principalement des nombres) :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Par contre, les ++ 600.000 lignes ne sont pas enregistées dans le FIC :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    :confused: J'ai fait le fainéant :
    - j'ai utilisé Import XXL sans regarder le code

    Si j'arrive à le comprendre, je vous fait signe ;)
    Cliquez pour agrandir...
    si ta pas le nombre en complet c'est peut etre que tu n'est pas en 64bit et que ton fic n'est pas configuré en 2 go!
     
  • FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    Non, c’est de ma faute s’il a une ligne dans la colonne A vide,
    du coup ça fausse mon calcul du nombre de lignes pour le découpage.

    Si la table n’existe pas, la création est faite avec l’option "GrosFichier".

    A+.
     
    elhacene apprécie ceci.
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Non, c’est de ma faute s’il a une ligne dans la colonne A vide,
    du coup ça fausse mon calcul du nombre de lignes pour le découpage.

    Si la table n’existe pas, la création est faite avec l’option "GrosFichier".

    A+.
    Cliquez pour agrandir...
    si j'ai bien compris je doit remplir les logne cellule vide de la colone a pour que le fichier fic soit crée! ?
     
  • FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    Merci les gars pour vos tests, mais il faudrait que j’arrive à intégrer les fichiers
    de n’importe qu’elle source, sans modifications de votre part.

    Cette nouvelle version enlève les accents et a un nouveau calcul du nombre de lignes.
    Si ça bloque encore, il faut que je sache pourquoi :

    Exe + sources en WD 22 :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    PS :
    Je constate que d’aller au limites de HImporteXLS ralenti grandement le traitement,
    j’ai donc réduit les cellules à 2 millions au lieu de 4, mais le nombre de fichiers est multiplié d’autant.

    A+.
     
    elhacene, suenodesign et joker aiment ça.
  • FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    J’ai constaté que les accents ne sont pas un problème pour les rubriques, ni les espaces.
    Je n’avais pas fait très attention sur la première erreur de rubrique sur le test de

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ,
    mais il avait un espace de trop après le nom, maintenant c’est réglé.

    Pour un meilleur calcul du nombre de lignes, je parcours toutes les colonnes.

    Exe + sources en WD 22 :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    A+.
     
    elhacene et joker aiment ça.
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150
    super super supppppper :px'D:winkytongue::winkytongue: sa fonctionne très bien 415 724 ligne en mois de 4 minute

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    merci a toi

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    et biensur a

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    qui a aidé a l'amélioration du programme jusqu'a la version v22.025.0

    après la creation du fichier il faut revoir si les rubrique sont bien nommée car il y des espace

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    joker, FreudWD et suenodesign aiment ça.
  • FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    Pour en finir avec les noms de rubrique inexploitables dans WX,
    je convertis les noms avec des caractères simples sans accents, ponctuations et autres :

    Exe + sources en WD 22 :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    A+.
     
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Ha ! Oui !

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Voilà une bonne nouvelle :)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ,
    - est ce que ta copie d'écran, c'est ton gros fichier XXL ?
    - quelle taille fait le FIC que tu as importé ?

    :)

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    le Roi du XXL ;)
    Cliquez pour agrandir...
    la capture est l'entéte du fichier fic et sa taille est de 879 Mo

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Pour en finir avec les noms de rubrique inexploitables dans WX,
    je convertis les noms avec des caractères simples sans accents, ponctuations et autres :

    Exe + sources en WD 22 :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    A+.
    Cliquez pour agrandir...
    un grand merci Chef ton programme est maintenant plus que parfait :happyblush
     
    #29 elhacene, Déc 3, 2018
    Dernière édition par un modérateur: Déc 3, 2018
    WX1331, FreudWD et joker aiment ça.
  • omasabik

    omasabik New Member

    Inscrit:
    Jan 9, 2018
    Messages:
    15
    J'aime reçus:
    1
    Un GRAND MERCI Mr FREUDWD
     
  • zmayyem

    zmayyem New Member

    Inscrit:
    Mar 31, 2018
    Messages:
    12
    J'aime reçus:
    11
    Bonjour, @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    merci pour cet exemple utile ,
    mais est ce que c'est possible de m'aider à faire fonctionner
    le projet pour qu'il puisse utiliser des grands fichiers .csv ??

    faire le découpage du fichier csv puis l’insérer dans le fichier de donnée étape par étape
    aussi je veux savoir si il est possible d'importer le grand fichier xls, ou csv dans un champ table
    avant de la sauvegarder directement dans le fichier de données ?
     
  • *!vince!*

    *!vince!* Member

    Inscrit:
    Juin 26, 2018
    Messages:
    62
    J'aime reçus:
    26
    Bravo FreudWD, très bel exemple de programmation très inspirant.
    Merci.
     
  • mikee5

    mikee5 Member
    MEMBRE WX

    Inscrit:
    Jan 1, 2018
    Messages:
    65
    J'aime reçus:
    75
    @ FreudWD : un grand merci
    ;)
     
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour, @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    merci pour cet exemple utile ,
    mais est ce que c'est possible de m'aider à faire fonctionner
    le projet pour qu'il puisse utiliser des grands fichiers .csv ??

    faire le découpage du fichier csv puis l’insérer dans le fichier de donnée étape par étape
    aussi je veux savoir si il est possible d'importer le grand fichier xls, ou csv dans un champ table
    avant de la sauvegarder directement dans le fichier de données ?
    Cliquez pour agrandir...
    solé pour le retard:
    bref: pour ton fichier csv tu peut l'enregistrer sous xlsx puis exécuté le code
    concernant la copie sur un champ table sa va beugué et planté et prend beaucoup de temp tous dépend de la capacité de ta ram.
    sinon je te donne le code suivant a mettre dans un bouton nommé coller :
    ///-------------------------------------------------------------
    // fait copie sur le contenu de ta feuil excel puis execute ce code
    sTxt, sLigne est une chaîne
    i, nPosTAB, nPosCR, nPosMax, j, nb, nAscii, nPosVirgule sont des entiers
    bQueChiffresDepuisTAB, bVirguleDepuisTAB est un booléen

    SI PressePapierFormat(ppfTexte) ALORS
    // récupère le texte dans le presse-papier
    sTxt = PressePapier()
    nPosMax = Taille(sTxt)
    i = 1 // indiquera la position courante du balayage de la chaine
    TANTQUE i <= nPosMax
    // récupère la prochaine ligne (avant le retour chariot)
    nPosCR = Position(sTxt, CR, i)
    SI nPosCR = 0 ALORS // pas de nouvelle ligne trouvée
    sLigne = Milieu(sTxt,i,nPosMax-i+1)
    i = nPosMax + 1
    SINON
    sLigne = Milieu(sTxt,i,nPosCR-i)
    i = nPosCR + 2
    FIN

    // remplace les virgules par des points dans les nombres à virgules
    // (lors d'un copier dans Excel, une tabulation sépare les champs)
    nb = Taille(sLigne)
    bQueChiffresDepuisTAB = Vrai
    bVirguleDepuisTAB = Faux
    POUR j=1 A nb
    nAscii = Asc(Milieu(sLigne,j,1))
    SI nAscii=9 ALORS // tabulation
    SI bQueChiffresDepuisTAB ET bVirguleDepuisTAB ALORS
    sLigne = Gauche(sLigne,nPosVirgule-1)+"."+Droite(sLigne,nb-nPosVirgule)
    FIN
    bQueChiffresDepuisTAB = Vrai
    SINON SI nAscii=44 ALORS // test si virgule
    bVirguleDepuisTAB = Vrai
    nPosVirgule = j
    SINON SI nAscii<48 OU nAscii>57 ALORS // test si pas chiffre
    bQueChiffresDepuisTAB = Faux
    FIN
    FIN

    // ajout de la ligne dans la table
    TableAjoute(Nom_champ_Table, sLigne)
    FIN
    FIN

    //--------------------------------
     
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Pour en finir avec les noms de rubrique inexploitables dans WX,
    je convertis les noms avec des caractères simples sans accents, ponctuations et autres :

    Exe + sources en WD 22 :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    A+.
    Cliquez pour agrandir...
    dit cher freud comment peut ton mettre par programmation une ou plusieur rubrique en clé double pour evité a chaque importation de le faire sur l'analyse
     
  • FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    Salut à tous,

    Impact sur l’analyse :

    Au lieu d'avoir la détection du type de rubrique au moment de l'importation,
    le traitement serait déplacé dans une fenêtre avec la possibilité de changer les types
    de la détection, et ainsi ajouter l'option d'index multiple.
    On pourrait aussi sauvegarde / lire cette description de table pour les futurs imports.

    Il y a peu, j'ai eu la 24, je vais donc voir les limites de l'importation avec cette version,
    et voir si on peut se passer d'Excel, toute en découvrant la 24.

    A+.
     
    WX1331 apprécie ceci.
  • elhacene

    elhacene Active Member
    MEMBRE WX

    Inscrit:
    Jan 14, 2018
    Messages:
    299
    J'aime reçus:
    150

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Salut à tous,

    Impact sur l’analyse :

    Au lieu d'avoir la détection du type de rubrique au moment de l'importation,
    le traitement serait déplacé dans une fenêtre avec la possibilité de changer les types
    de la détection, et ainsi ajouter l'option d'index multiple.
    On pourrait aussi sauvegarde / lire cette description de table pour les futurs imports.

    Il y a peu, j'ai eu la 24, je vais donc voir les limites de l'importation avec cette version,
    et voir si on peut se passer d'Excel, toute en découvrant la 24.

    A+.
    Cliquez pour agrandir...
    oh salut amigo ok je t'attend avec impatience avec t es teste et pense aussi a la possibilité de de rendre une rubrique en clé double (index) par programation pour évité de le faire manuellement sur l'analyse et de regénéré, encore merci et bon courage amigo
     
  • FreudWD

    FreudWD Well-Known Member
    MEMBRE WX WXG 21

    Inscrit:
    Jan 22, 2018
    Messages:
    199
    J'aime reçus:
    368
    Bonjour à tous,

    Je n’ai pas eu le temps d’actualiser, en plus mon compte Mega a sauté,
    Je remets donc le dernier lien :

    Exe + sources en WD 22 :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    A+.
     
  • zmayyem

    zmayyem New Member

    Inscrit:
    Mar 31, 2018
    Messages:
    12
    J'aime reçus:
    11
    Salut

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , svp est ce que pouvez vous m'aider a modifier le code pour que je puisse importer un fichier xls vers une base de données MySql ? Ou si possible, de créer vous même une version de ce code qui permet a importer une fichier excel dans une base MySQL , Merci
     
  • ddomin37

    ddomin37 New Member

    Inscrit:
    Mai 19, 2021
    Messages:
    1
    J'aime reçus:
    0
    Bonjour

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , Merci d'avoir actualisé le lien.

    A+
     
  • Partager cette page

    Chargement...