PILOTER EXCEL VIA MICROSOFT.OFFICE.INTEROP.EXCEL

workdevnoob Messages postés 9 Date d'inscription mardi 28 décembre 2010 Statut Membre Dernière intervention 28 décembre 2010 - 22 déc. 2009 à 10:11
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 - 12 mai 2016 à 11:09
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50624-piloter-excel-via-microsoft-office-interop-excel

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
12 mai 2016 à 11:09
De rien
Merci!
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
4 juil. 2014 à 19:38
Selon la version d'excel et de visual studio cette erreur peut apparaitre:
Impossible de charger le fichier ou l'assembly 'Office, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' ou une de ses dépendances. Le fichier spécifié est introuvable.
Pour s'en affranchir telecharger office.dll version 7 et la mettre dans le répertoire d'exécution du projet.
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
6 mars 2013 à 17:20
Merci pour la correction
cs_bgu Messages postés 4 Date d'inscription mercredi 25 mai 2005 Statut Membre Dernière intervention 26 octobre 2006
6 mars 2013 à 14:13
Exemple de code assez complet. Merci
cs_bgu Messages postés 4 Date d'inscription mercredi 25 mai 2005 Statut Membre Dernière intervention 26 octobre 2006
6 mars 2013 à 14:09
Merci, pour ton travail il m'est très utile.
Je me suis aperçu que lorsque tu met une Cellule en couleur, la cellule est d'une autre couleur que celle voulue.
Par exemple : CouleurFondRange(Color.Red) fait du bleu.

En changeant le bout de code suivant on a bien la couleur voulu.

Avant
public void CouleurFondRange(Color MaCouleur)
{
_MonRange.Interior.Color = MaCouleur.ToArgb();
}

Après
public void CouleurFondRange(Color MaCouleur)
{
_MonRange.Interior.Color = MaCouleur;
}
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
4 août 2010 à 22:12
Merci, je ferai une mise à jour prochainement
tvdinneur Messages postés 1 Date d'inscription mercredi 7 avril 2010 Statut Membre Dernière intervention 4 août 2010
4 août 2010 à 20:13
Bonjour

Un petit bug s'est glissé dans le code...
Dans la fonction AdresseCellTypeA1, il y a un décalage de 1 pour une colonne = 52.

correction :
//optient la premiere lettre par division la deuxiéme est le reste
int Lettre2;
int Lettre1 = Math.DivRem((Colonne-1), 26, out Lettre2);

//converti la valeur de colonne et lettre majuscule A = 65 etc
// char Lettre11 = new char();
char Lettre11;
Lettre11 = Convert.ToChar(Lettre1 + 64);
// char Lettre22 = new char();
char Lettre22;
Lettre22 = Convert.ToChar(Lettre2 + 65);
TheOnlyMaX Messages postés 37 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 26 avril 2010
19 avril 2010 à 16:13
Si tu veux coller le contenu d'un DataTable dans un fichier Excel, tu peux utiliser la méthode SaveDataToFile de ce code :
http://www.csharpfr.com/codes/EXCEL-SERVER_51643.aspx
katkot1981 Messages postés 3 Date d'inscription mardi 25 mars 2008 Statut Membre Dernière intervention 7 avril 2010
19 mars 2010 à 17:15
Bonjour
SVP j'ai besoin d 'aide si quelqu'un peux me dire comment exporter des données d'une base de données Mysql vers une fichier excel en utilisons c#

merci d'avance
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
22 déc. 2009 à 12:35
Bonjour,
une petite précision je suis débutant et cette source est la seule que j'ai mise sur le forum.
Je ne suis pas sur de bien comprendre ton besoin.
Si tu veux chercher une valeur spécifique dans une colonne précise (ex "toto" dans la colonne "A6"), peut être peux tu utiliser la fonction de recherche de excel. Ou alors faire une boucle de la ligne 1 jusqu'à la derniére ligne et extraire la valeur pour la comparer.
Je ne me suis pas penché sur ces deux méthodes car mon besoin était d'écrire un fichier entier.

La façon dont j'ai procédé pour coder cette source est:
- Creer une macro vb par l'enregistrement des actions effectuées
- Bidouillage pour transformer en C#, avec recherches dans le forum ou sur le net.

Sur le forum, il y a une source qui utilise la feuille excel comme une base de donnée, elle ne convenait pas mais, peut être pourrais tu charger la feuille dans une liste d'objets et faire tes recherches sur cette liste.
http://www.csharpfr.com/codes/EXPORTER-VOS-DONNEES-SQL-SERVER-ACCES-XML-EXCEL_41784.aspx

Cordialement
workdevnoob Messages postés 9 Date d'inscription mardi 28 décembre 2010 Statut Membre Dernière intervention 28 décembre 2010
22 déc. 2009 à 10:11
Salut,

Merci pour ton post, il marche bien.

Par contre, une fois que j'ai écris des lignes dans excel, j'aimerai savoir si j'ai déjà écris cette même valeur avant.

Comment peut on faire pour lire les lignes une à une d'une colonne?

Merci
Rejoignez-nous