none
Diferencia en resultados de macro vba excel al pasar de Microsoft visual basic para aplicaciones 7.0 a Microsoft visual basic for applications 7.1 RRS feed

  • Pregunta

  • Hola,

    Espero que me podáis ayudar:

    He migrado de la versión de office 2010 a la 2019. Y he encontrado que Excels donde tengo programación visual basic me  está dando resultados diferentes en una versión y otra. Y todo es sobre el mismo Excel, sin haber modificado nada

    Estoy ejecutando una macro de Excel en las siguientes versiones:

    • Microsoft      office Standard 2010. Microsoft visual basic para aplicaciones 7.0
    • Microsoft      office hogar y empresas 2019. Microsoft visual basic for applications 7.1

     

    Ejecuto la macro paso a paso y me da resultados distintos en lo siguiente:

    Dentro de un bucle for tengo las siguientes instrucciones.

    ‘Actualizo las cotas x e y de la gráfica

    ActiveChart.SeriesCollection(2).XValues = ActiveSheet.Range("l" & (lehen_irakurketa + i - 1) & ":" & "l" & (lehen_irakurketa + puntosvacio - 1))

    ActiveChart.SeriesCollection(2).Values = ActiveSheet.Range("m" & (lehen_irakurketa + i - 1) & ":" & "m" & (lehen_irakurketa + puntosvacio - 1))

     

    ‘Cojo el texto de la línea de tendencia de la gráfica actualizada

    kk = ActiveChart.SeriesCollection(2).Trendlines(1).DataLabel.Text

     

     

    El problema viene en el valor de kk.

    • Primera valor dentro del bucle for
      • Microsoft       office Standard 2010. Microsoft visual basic para aplicaciones 7.0
            
        • "y        = 3,222E-06x + 5,212E-01
                 R² = 9,106E-01"
      • Microsoft       office hogar y empresas 2019. Microsoft visual basic for applications 7.1      
            
        • "y        = 3,222E-06x + 5,212E-01

    R² = 9,106E-01"

    • Segundo valor dentro del bucle for
      • Microsoft       office Standard 2010. Microsoft visual basic para aplicaciones 7.0
            
        • "y        = 2,577E-06x + 3,067E+00

    R² = 9,460E-01"

    Valor correcto!

      • Microsoft       office hogar y empresas 2019. Microsoft visual basic for applications 7.1      
            
        • "y        = 3,222E-06x + 5,212E-01
                 R² = 9,106E-01"
            
        • Valor        incorrecto!

     

     

    El valor en Office 2019 no se actualiza! Y es dentro de la macro, porque la gráfica sí tiene el valor actualizado

    <v:shapetype coordsize="21600,21600" filled="f" id="_x0000_t75" o:preferrelative="t" o:spt="75" path="m@4@5l@4@11@9@11@9@5xe" stroked="f">Espero que me podaís ayudar</v:shapetype>

    Gracias<v:shapetype coordsize="21600,21600" filled="f" id="_x0000_t75" o:preferrelative="t" o:spt="75" path="m@4@5l@4@11@9@11@9@5xe" stroked="f">
     <v:stroke joinstyle="miter">
    <v:formulas>  <v:f eqn="if lineDrawn pixelLineWidth 0">
      <v:f eqn="sum @0 1 0">
      <v:f eqn="sum 0 0 @1">
      <v:f eqn="prod @2 1 2">
      <v:f eqn="prod @3 21600 pixelWidth">
      <v:f eqn="prod @3 21600 pixelHeight">
      <v:f eqn="sum @0 0 1">
      <v:f eqn="prod @6 1 2">
      <v:f eqn="prod @7 21600 pixelWidth">
      <v:f eqn="sum @8 21600 0">
      <v:f eqn="prod @7 21600 pixelHeight">
      <v:f eqn="sum @10 21600 0">
     </v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:formulas>
     <v:path gradientshapeok="t" o:connecttype="rect" o:extrusionok="f">
     <o:lock aspectratio="t" v:ext="edit">
    </o:lock></v:path></v:stroke></v:shapetype><v:shape alt="cid:image015.jpg@01D60376.5D918350" id="Imagen_x0020_6" o:spid="_x0000_i1025" style="width:331.5pt;height:162pt;" type="#_x0000_t75">
    <v:imagedata o:href="cid:image001.jpg@01D62DF2.A571C300" src="file:///C:\TEMP\msohtmlclip1\01\clip_image001.jpg">
    </v:imagedata></v:shape>

    miércoles, 20 de mayo de 2020 14:26