Erreur "3434" Impossible d'agrandir la plage nommée [Résolu]

Calade 1212 Messages postés dimanche 20 avril 2003Date d'inscription 4 juin 2016 Dernière intervention - 15 janv. 2010 à 09:07 - Dernière réponse : Calade 1212 Messages postés dimanche 20 avril 2003Date d'inscription 4 juin 2016 Dernière intervention
- 17 févr. 2010 à 10:09
Bonjour à tous,

Devant rendre quotidiennement un certain nombre d'états pleins de chiffres dont les données brutes résident dans des SI pro', j'extrais celles-ci sous forme de .CSV que j'attachent ensuite à des tables Access.

Je lance ensuite une série de requêtes via une macro et, la mise en forme se faisant sous Excel (beaucoup plus pratique), la dernière requête est généralement un "TransferSpreadsheet" sur un onglet de classeur Excel.

Tout va bien dans la majorité des cas sauf quand le nombre de lignes/de colonnes varie une fois sur l'autre et j'obtiens donc l'erreur "3434 - Impossible d'agrandir la plage nommée".

Un transferSpreadsheet créant une plage que l'on peut modifier ensuite sous Excel par le menu "Insertion/Nom/Définir".

Toutes ces manips depuis le début étant automatisées via un bout de code VBA, y aurait-il un moyen de contourner cette erreur qui me fiche tout en l'air.

J'espère avoir été assez clair.
Merci pour vos réponses.


Calade
Afficher la suite 

7 réponses

Répondre au sujet
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 15 janv. 2010 à 11:55
+1
Utile
Pour faire l'essai et mettre le doigt dessus, essaye de faire cette commande vers un nom d'onglet "standard".
Si ça passe avec un nom court, tu peux faire cet export avec un nom court, puis renommer le nom de l'onglet plus tard, pour rester compatible avec tes liens.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Jack
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 17 janv. 2010 à 03:07
+1
Utile
Non, tu peux faire ton export en utilisant un nom d'onglet "normal" et quand tout est fini, faire une bidouille pour renommer l'onglet avec ton nom à rallonge.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Jack
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 15 janv. 2010 à 10:40
0
Utile
Salut
L'erreur est sous Access ou sur Excel ?
Sur quelle ligne du programme survient l'erreur ?
Sur quel objet agis-tu ?
As-tu fais une recherche de la phrase d'erreur sur le net ?
As-tu lu cette question en rapport : <lien ici>

L'erreur semble liée à la version de MDAC

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
Calade 1212 Messages postés dimanche 20 avril 2003Date d'inscription 4 juin 2016 Dernière intervention - 15 janv. 2010 à 11:19
0
Utile
Bonjour et merci de me répondre,

L'erreur se produit dans Access à la ligne suivante:

   DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, "R_130_OP_CHD_en cours_SMoins1 par marché", strExcelFile

ou strExcelFile est le nom du fichier Excel cible.

Les recherches sur le Net ne renvoient qu'une dizaine (!) de réponses exploitables dont la mienne et une autre solutionnée en supprimant l'onglet avant le transfert. Le problème avec ça c'est que le nom de la requête étant trop long pour nommé un onglet (maxi 30 car.) et difficile à renommer sans la rendre incompréhensible par rapport aux autres, j'ai ensuite renommé l'onglet en question.

Et pour couronner le tout cet onglet sert de serveur de données à un autre plein de RechercheV() qui seraient tous à revoir.

MDAC déclaré automatiquement par Access 2.1 mais idem avec 2.8 (2.8 dans le registry).

Calade
Commenter la réponse de Calade
Calade 1212 Messages postés dimanche 20 avril 2003Date d'inscription 4 juin 2016 Dernière intervention - 15 janv. 2010 à 11:22
0
Utile
Re moi,

J'ai oublié de préciser que si j'agrandis au départ la plage, si la requête renvoie plus de lignes j'ai une erreur "3435 - impossible de supprimer les lignes...", je ne me rappelle plus le libellé exact.


Calade
Commenter la réponse de Calade
Calade 1212 Messages postés dimanche 20 avril 2003Date d'inscription 4 juin 2016 Dernière intervention - 15 janv. 2010 à 14:00
0
Utile
Merci Jack du tuyau.

J'ai renommé la requete "requete" et donc la commande devient:

   DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, "Requete", strExcelFile

me créé un onglet "Requete" et là pas de problème, il augment ou diminue le nb de lignes (et modifie la plage nommée).

Il reste plus qu'à modifier tous mes tableaux.

Calade
Commenter la réponse de Calade
Calade 1212 Messages postés dimanche 20 avril 2003Date d'inscription 4 juin 2016 Dernière intervention - 17 févr. 2010 à 10:09
0
Utile
Bonjour Jack,

Désolé d'avaoir attendu si longtemps pour répondre mais en début d'année c'est toujours la course.

Bon j'ai préféré refaire mon tableau (avec des Remplacer Tout cela ne prend pas longtemps), car c'est un tableau que je sors toutes les semaines et je préfèrais laisse quelque chose de propre.

Merci en tout cas pour ton aide.


Calade
Commenter la réponse de Calade

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.