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

VBA Access Discussion :

pastSpecial crash avec access 2010 et 2013


Sujet :

VBA Access

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Points : 76
    Points
    76
    Par défaut pastSpecial crash avec access 2010 et 2013
    Hello à tous,


    Je travail sur une application compatible 2003, 2010 et 2013.

    J'ai une fonction d'export vers Excel, mais celle-ci crash avec les version 2010 et 2013

    je recois ce message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Description: PasteSpecial method of Range class failed
       Extra info: use copy paste method to transfer to XLS
    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
    18
    19
    20
    21
    22
    23
    24
    25
    If subfrm.Form.RecordsetClone.RecordCount > 0 Then
          strDebugInfo = "use copy paste method to transfer to XLS"
          subfrm.SetFocus
          DoCmd.RunCommand acCmdSelectAllRecords
          DoCmd.RunCommand acCmdCopy
          Set objXLS = CreateObject("Excel.Application")
          objXLS.Workbooks.Add
          Set rng = objXLS.Workbooks(1).worksheets(1).Range("A1")
          rng.Select
          rng.PasteSpecial -4163 'xlPasteValues
          strDebugInfo = "check if first row does not contain formName (happens sometimes)"
          If UCase(objXLS.Workbooks(1).worksheets(1).Range("A1").Value) = UCase(subfrm.Form.Name) Then objXLS.Workbooks(1).worksheets(1).Range("A1").EntireRow.Delete
          strDebugInfo = "format pasted values: header bold + autosize columns"
          Set rng = objXLS.Workbooks(1).worksheets(1).Range("A1").EntireRow
          rng.Font.Bold = True
          rng.Cells.Columns.EntireColumn.AutoFit
          strDebugInfo = "set name of sheet to name of form"
          If subfrm.Form.Caption <> "" Then
              objXLS.Workbooks(1).worksheets(1).Name = subfrm.Form.Caption
          Else
              objXLS.Workbooks(1).worksheets(1).Name = subfrm.Name
          End If
        Else
          MsgBox "No data to export.", vbInformation
        End If
    Pourriez-vous m'aider sur ce probème?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 642
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 642
    Points : 34 350
    Points
    34 350
    Par défaut
    Salut,

    pour le problème en lui-même, pas d'idée immédiate. Par contre pour l'export sous Excel, j'en ai une

    Pourquoi ne passes-tu pas par le nettement plus classique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Docmd.TransferSpreadsheet
    ?
    Ou si tu veux vraiment passer par du code sous Excel par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RAnge("A1").CopyFromRecordset RS
    Je n'avais jamais penser utiliser un paste special d'ailleurs

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Points : 76
    Points
    76
    Par défaut
    Je ne connais pas exactement les raisons, de cette manière de procéder, honnetement je suis un peu novice an vba access, et cette application à été crée a la base en access 97.

    J'essaye ici de resoudre ce problème sans trop de changement

Discussions similaires

  1. [OL-2010] Sync. avec Access 2010 - dates farfelues
    Par sebinator dans le forum VBA Outlook
    Réponses: 1
    Dernier message: 25/01/2013, 16h12
  2. [OL-2010] Synchronisation avec access 2010
    Par sebinator dans le forum VBA Outlook
    Réponses: 5
    Dernier message: 23/01/2013, 13h15
  3. Impossible de créer un TCD avec access 2010
    Par ludosnip dans le forum IHM
    Réponses: 1
    Dernier message: 07/01/2013, 18h34
  4. [AC-2010] état nouvellement non fonctionnel avec access 2010
    Par jfsarrazin dans le forum IHM
    Réponses: 5
    Dernier message: 03/10/2012, 06h07
  5. Réponses: 2
    Dernier message: 19/01/2011, 22h08

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