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

Macros et VBA Excel Discussion :

Bug VBA: SUM sur colonne "AN" [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de dacid
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 065
    Par défaut Bug VBA: SUM sur colonne "AN"
    Bonjour à tous,

    J'ai un script PHP qui utilise la classe "class.writeexcel_workbook.inc.php" pour générer un fichier Excel sur un serveur.
    En gros, j'ai un tableau de valeur (de C7 à CX22) et en pied de chaque colonne, je veux faire une somme
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        for ($c = 2; $c <= $lastCol; $c++) {
    		//if ($c!=39) {
    			$nomCol = getColName($c);
    			$worksheet->write($line, $c, "=SUM(".$nomCol."".($firstLine+1).":".$nomCol."".$line.")", $boldTextCenter);
    		//}
        }
    Ce script allait bien jusqu'au bout, mais le fichier généré refusait de s'ouvrir et indiquait une erreur:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><logFileName>error056400_01.xml</logFileName>
    <summary>Des erreurs ont été détectées dans le fichier «*C:\Users\DMorel\Desktop\universEtThemes_parRA_VP_2012091141.xls*»</summary>
    <additionalInfo>
    <info>Excel a récupéré vos formules et les valeurs des cellules, mais certaines données peuvent avoir été perdues.</info>
    </additionalInfo>
    </recoveryLog>
    Le fichier qui s'ouvrait était vierge.

    Après maints tests de débuggage, j'ai identifié que c'était le calcul de la colonne AN (39) qui faisait planter l'ouverture du fichier. Si je met la condition pour ôter la colonne 39, le fichier est valide.
    Pour info, si j'inverse la condition (Somme que sur la colonne 39), le fichier redevient erroné ! C'est donc bien la fonction "=SOMME(AM7:AM22)" qui plante.

    Est-ce un bug connu ?
    Comment Faire une fonction somme() sans appeler les colonnes par leur nom, mais par leur index ? (j'ai essayé avec adresse(), mais n'ai pas réussi à le faire fonctionner).

    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de dacid
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 065
    Par défaut
    Bon, c'est résolu... J'ai juste fait un :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	ini_set("magic_quotes_gpc", "off"); // Sinon BUG sur "SUM(AN3:AN22)"
    	ini_set("magic_quotes_runtime", "off");
    	ini_set("magic_quotes_sybase", "off");

    Je ne comprend pas pourquoi, mais ça fonctionne !
    ...2 jours que je suis dessus quand même !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Quote] DVP quoté sur Bashfr
    Par Skyounet dans le forum La taverne du Club : Humour et divers
    Réponses: 16
    Dernier message: 26/09/2006, 18h52
  2. Problème sur Request.ServerVariables("QUERY_STRING"
    Par PrinceMaster77 dans le forum ASP
    Réponses: 3
    Dernier message: 25/03/2005, 11h47

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