Microsoft Developer Network > Página principal de foros > Visual Studio Tools for Office > How to fill a Range from an array in vsto and excel 2003
Formular una preguntaFormular una pregunta
 

RespondidaHow to fill a Range from an array in vsto and excel 2003

  • miércoles, 05 de diciembre de 2007 23:26MaxJC Medallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     

    Hi

     

    I'd appreciate if someone shows me how to fill an excel range with an array data using vsto and visual basic, with one or two lines of code (not cell by cell).

     

    My array and my range look like A(2000, 25) and Range("A11:Z2000)

     

    Thank you very much!

    Max

     

     

Respuestas

  • jueves, 06 de diciembre de 2007 7:37Ji.ZhouMSFT, ModeradorMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     Respondida

    Hi,

     

    There are two ways to do that. One is using 2D array, and another is using Application.WorkbookFunction.Transpose(array)

    A very good blog article and followed discussions are available in Eric Carter’s blog:

    http://blogs.msdn.com/eric_carter/archive/2004/05/04/126190.aspx

    Codes work fine in my side:

    Code Block

                int[] arr = new int[5];
                arr[0] = 0;
                arr[1] = 1;
                arr[2] = 2;
                arr[3] = 3;
                arr[4] = 4;

                app.get_Range("A1", "A5").Value2 = app.WorksheetFunction.Transpose(arr);

     

     

     

     

     

    Thanks

    Ji

     

  • jueves, 06 de diciembre de 2007 18:58MaxJC Medallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     Respondida

    Ji:

    It worked well !

    Thank you very much Ji

    Max

Todas las respuestas

  • jueves, 06 de diciembre de 2007 7:37Ji.ZhouMSFT, ModeradorMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     Respondida

    Hi,

     

    There are two ways to do that. One is using 2D array, and another is using Application.WorkbookFunction.Transpose(array)

    A very good blog article and followed discussions are available in Eric Carter’s blog:

    http://blogs.msdn.com/eric_carter/archive/2004/05/04/126190.aspx

    Codes work fine in my side:

    Code Block

                int[] arr = new int[5];
                arr[0] = 0;
                arr[1] = 1;
                arr[2] = 2;
                arr[3] = 3;
                arr[4] = 4;

                app.get_Range("A1", "A5").Value2 = app.WorksheetFunction.Transpose(arr);

     

     

     

     

     

    Thanks

    Ji

     

  • jueves, 06 de diciembre de 2007 18:58MaxJC Medallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuarioMedallas del usuario
     Respondida

    Ji:

    It worked well !

    Thank you very much Ji

    Max