Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2949 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Souci de conversion de code 2007 vers 2013

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Souci de conversion de code 2007 vers 2013

n°2271117
Laska-
Posté le 08-12-2015 à 19:03:17  profilanswer
 

Bonsoir
J'avais excel 2007 sur mon ancien PC
Maintenant j'ai changé de PC. 2007 c'est moche et j'ai plus la licence, j'ai préféré prendre une licence 2013 pour mon nouveau PC.
Seulement j'ai une fonction importante dans mes macros VBA qui a disparu
Le but de cette macro c'est de prendre en entrée plein de données (des vecteurs VBA ou des vecteurs de cellule) et d'en faire des trucs.
Cette macro ne fonctionne plus sur ma nouvelle version de excel...
J'ai essayé d'investiguer d'où venait le problème.
Apparemment, c'est juste au moment de lire les valeurs que le code a du mal.
 
Avant on faisait ça :
  i = 0
 For Each valeur In abscisses
    xx(i) = valeur.Value
   i = i + 1
Next valeur
 
Sauf que maintenant dans mon abscisses (qui est par exemple un range("A1:A10" )) il n'y a plus de value. Il y a un value2 qui est une matrice, ici value2(1,1) à value2(10,1)
 
Comment faire pour refaire marcher ce code ?
J'ai évidemment essayé de remplacer le .value par un .value2(i+1,1), mais ça n'a pas marché...
 
Merci pour votre aide

mood
Publicité
Posté le 08-12-2015 à 19:03:17  profilanswer
 

n°2271187
Chelmi18
Posté le 09-12-2015 à 11:38:17  profilanswer
 

Bonjour,  
 
Je pencherais plutôt par une modification de l'affection de ta donnée valeur.
Si ton Range est remplacé par une matrice, c'est peut-être le type de donnée que tu utilise qui n'est plus le bon.  
 
Comment sont déclarés et alimentés valeur et abscisses ?
 
En complément, un peu de lecture : https://support.microsoft.com/en-us/kb/213719


Message édité par Chelmi18 le 09-12-2015 à 11:40:05
n°2271271
Laska-
Posté le 09-12-2015 à 17:05:05  profilanswer
 

Normalement, le code devrait fonctionner si tu lui mets deux vecteurs (matrice 1xn) ou bien si tu lui mets deux range.
En fait il teste le type de donnée, et si c'est un type range il rentre dans la partie de code qui me pose problème.
 
On fait mafonction(abscisses,ordonnées,bidule)
et ensuite on déclare xx de la bonne taille (taille de abscisses - 1) et on met le bout de code que j'ai posté ci haut.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Souci de conversion de code 2007 vers 2013

 

Sujets relatifs
Conversion algorithme Python -> VBA (combinaisons de p élém. parmi n)Membre object statique dans classe template : souci
Excel : Code macro pour aller chercher les données d'un autre fichierSouci pour exécuter fonction ajax au chargement de la page
[ASP] Terniner une page avec un code retour précisCode complexe c++
Code vba pour le calcul de rendementCopie de fichiers vers dossiers en fonction du nom de fichier
[PERL] CGI retourner un code erreurCode de retour Runtime avec exitValue
Plus de sujets relatifs à : Souci de conversion de code 2007 vers 2013


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR