IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Probleme d'envoi de fichiers EXcel


Sujet :

Access

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Probleme d'envoi de fichiers EXcel
    Bonjour à Tous,

    Je vais essayer d'être concis....

    J'ai besoin d'envoyer, à partir d'un formulaire, par mail, des tables access remises à jour, au format excel...dans les menus de macro existe la commande "envoyer Objet" dans laquelle on peut définir le format d'envoi "excel 97-2003"....

    Tout fonctionne bien sauf que, dans le fichier Excel généré, mes champs "mémo" sont tronqués à 255 caracteres...Y'a t-il une solution sachant que quand je fais une exportation simple ( menu fichier exporter ) d'une table sous excel ça fonctionne...

    D'avance merci

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Points : 181
    Points
    181
    Par défaut
    Bonjour,

    Oui, il y a une solution. C'est d'éclaterle champ mémo de ta table
    en plusieurs champs. Pour savoir combien de champs, fais
    une requete qui renvoie sur la colonne le Max(len(champMemo))

    Et apres du fais NbChamps= Max(len(champMemo)) / 255

    Tu obtiens le nb de nouveaux champs Texte de 255 caractères à créer dans ta table

    Puis pour ton traitement tu fais des

    Mid(Chaine,1,255) tant que tu peux faire des mod(255) ou tu boucle par
    pas de 255 jusqu'à TailleMax du champ.

    J'espère que j'ai aidé.

  3. #3
    Membre confirmé Avatar de ypicot
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 412
    Points : 579
    Points
    579
    Par défaut
    Une idée comme ca : essaie de l'envoyer sous un autre format (csv), qui reste compatible excel et qui n'a peut-être pas cette limitation.

    Attention, je n'ai pas testé (envie de dodo)

    Yvan
    Une solution n'est valable que dans un contexte donné

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 110
    Points : 107
    Points
    107
    Par défaut
    Salut,
    Dans la lignée de ce qui est proposé par batou22003, le code ci après est proposé par le support Microsoft pour résoudre ce pb de taille.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Function MemoSplitter(strReportName As String, _ 
      strFieldName As String, lngMemoLength As Long) 
     
      Dim NewControl As Control 
      Dim intLoopCount As Integer 
      For intLoopCount = 0 To lngMemoLength / 250 
     
         Set NewControl = CreateReportControl(strReportName, _ 
            acTextBox, acDetail) 
         NewControl.Name = intLoopCount & "MemoText" 
         NewControl.ControlSource = "=Mid([" & _ 
            strFieldName & "]," & 250 * intLoopCount + 1 _ 
            & ",250)" 
      Next intLoopCount 
     
    End Function
    Autre problème qui découle également de l'envoi de champs Memo, les retours à la ligne qui deviennent des petits carrés dans la cellule excel.
    Ce code est une solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    CelluleExcel=Replace(CelluleExcel, Chr(13), "")

Discussions similaires

  1. Envoi de fichier excel par mail automatique
    Par julio02200 dans le forum Excel
    Réponses: 3
    Dernier message: 06/11/2007, 14h31
  2. envoi mail fichier excel en VBA
    Par natie_49 dans le forum Excel
    Réponses: 1
    Dernier message: 09/07/2007, 19h56
  3. probleme de manipulation de fichier excell
    Par obydissonn dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/03/2007, 13h21
  4. probleme flexcel creer un fichier excell
    Par oneill701 dans le forum Bases de données
    Réponses: 2
    Dernier message: 23/06/2006, 10h22
  5. [socket] probleme d'envoi de fichier
    Par soulhouf dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 21/10/2005, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo