Copier/Coller Excel Dans C# [Résolu]

AkramIng 12 Messages postés lundi 16 juin 2014Date d'inscription 23 juillet 2014 Dernière intervention - 16 juin 2014 à 15:16 - Dernière réponse : jordane45 22906 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 21 octobre 2018 Dernière intervention
- 25 juin 2014 à 11:20
Svp, j'ai voulu de copier un onglet (worksheet) d'une feuille excel X vers un autre onglet d'un autre fichier excel y existant.
J'ai utilisé la méthode "Copy" du namespace "Microsoft.Office.Interop.Excel"
mais ça marche pas ("Copy" fonctionne que pour une copie dans le même fichier Excel) .
si vous connaissez comment faire, merci de m'aider.
le code utilisé est :
public void Lecture_fond()
        {
          Application xl = new Application();
            Workbook workbook = xl.Workbooks.Open(Chemin_fond_input);
            Worksheet ws = (Worksheet)workbook.Sheets["_FVAGIPI 1213"];
            Workbook workbook1 = xl.Workbooks.Open(Chemin_modgap_input);
            Worksheet ws1 = (Worksheet)workbook1.Sheets["Fonds"];
            ws.Copy(ws1, Type.Missing);
 
}
Afficher la suite 

Votre réponse

4 réponses

jordane45 22906 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 21 octobre 2018 Dernière intervention - 16 juin 2014 à 17:35
0
Merci
Bonjour,

La méthode copy fonctionne vers un autre classeur...

En VBA elle s'écrit:
Workbooks("monClasseur1.xlsx").Sheets("Feuil1").Copy Before:=Workbooks("monAutreClasseur.xlsx").Sheets(1)

http://msdn.microsoft.com/fr-fr/library/microsoft.office.tools.excel.worksheet.copy.aspx


ce qui, en C# devrait ressembler à un truc du genre :

public void Lecture_fond()
        {
          Application xl = new Application();
            Workbook wbk1= xl.Workbooks.Open(Chemin_fond_input);
            Worksheet ws1 = (Worksheet)wbk1.Sheets["_FVAGIPI 1213"];
            Workbook wbk2= xl.Workbooks.Open(Chemin_modgap_input);
            Worksheet ws2 = (Worksheet)wbk2.Sheets["Fonds"];
            ws1.Copy(wbk2.ws2 , Missing.Value);
 
}



Whismeril 12119 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 21 octobre 2018 Dernière intervention - 17 juin 2014 à 09:43
Bonjour, je confirme le code de Jordoane.

Cependant, aller savoir pourquoi, il existe deux insterfaces pour les classeurs (Workbook et _Workbook) et deux pour les feuilles (Worksheet et _Worksheet).
J'ai constaté par le passé que mes codes fonctionnent mieux avec les interfaces commençant par les _
Commenter la réponse de jordane45
AkramIng 12 Messages postés lundi 16 juin 2014Date d'inscription 23 juillet 2014 Dernière intervention - 25 juin 2014 à 11:17
0
Merci
Problème résolu.

Merci
jordane45 22906 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 21 octobre 2018 Dernière intervention - 25 juin 2014 à 11:20
Bonjour,
Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

Cordialement,
Jordane
Commenter la réponse de AkramIng

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.