Le réseau pour les développeurs > Forums - Accueil > Visual Studio Tools for Office > How to fill a Range from an array in vsto and excel 2003
Poser une questionPoser une question
 

TraitéeHow to fill a Range from an array in vsto and excel 2003

  • mercredi 5 décembre 2007 23:26MaxJC Médailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     

    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

     

     

Réponses

  • jeudi 6 décembre 2007 07:37Ji.ZhouMSFT, ModérateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     Traitée

    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

     

  • jeudi 6 décembre 2007 18:58MaxJC Médailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     Traitée

    Ji:

    It worked well !

    Thank you very much Ji

    Max

Toutes les réponses

  • jeudi 6 décembre 2007 07:37Ji.ZhouMSFT, ModérateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     Traitée

    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

     

  • jeudi 6 décembre 2007 18:58MaxJC Médailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     Traitée

    Ji:

    It worked well !

    Thank you very much Ji

    Max