Importation et exportation .Net Com Excel

Ajoutez d'abord une référence à Microsoft.office.interop.excel

Pendant le processus de référence, la bibliothèque d'objets Microsoft.Office 11.0 peut ne pas être référencée. Cela peut être dû au fait que votre Office2003 n'a pas choisi de prendre en charge .net. Vous pouvez réexécuter le fichier d'installation d'Office, puis rechercher l'élément Excel pour développer le nœud et sélectionnez support.net

Ensuite, utilisez Namespace dans la page :

à l'aide d'Excel = Microsoft.Office.Interop.Excel ;

 

Voici le code détaillé :

#region Export Data
        /// <summary>
        /// 
        /// </summary>
        private void Export()
        {             Excel.Application excel = new Excel.Application();             Excel.Workbooks classeurs = excel.Workbooks;             Classeur Excel.Workbook = classeurs.Add(Excel.XlWBATemlate.xlWBATWorksheet);             Feuille de calcul Excel.Worksheet = (Excel.Worksheet)workbook.Worksheets[1];             Plage Excel.Range = null;             worksheet.Cells[1, 1] = "报关单Excel" ;             plage = (Excel.Plage)feuille de calcul.Cellules[1, 1] ;             range.Font.Bold = vrai;             plage.Font.Size = 18 ;









           //range.Interior.Color = 150; //Définir la couleur en fonction de l'index, de l'index et de la ressource de référence de valeur/HelpPic  
            range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;//Définir le texte au centre
            range = (Excel.Range ) worksheet.get_Range (feuille de calcul. Cellules [1, 1], feuille de calcul. Cellules [1, 5]);
            plage. Select ();
            plage. Merge (false);

            range.Borders[Excel.XlBordersIndex.xlInsideHorizontal].Weight = Excel.XlBorderWeight.xlThin ;
            chaîne FileName = Server.MapPath("..//..//resource//Templetes//") + DateTime.Today.ToString( "aaaaMMjj") + new Random(DateTime.Now.Millisecond).Next(1000000).ToString() + ".xls" ;
           
            //Foreach IList, And Add Data To Excel
            //Write Excel Header
            worksheet.Cells[3, 1] = "Numéro de déclaration en douane" ;
            worksheet.Cells[3, 2] = "Moyen de transport" ;
            worksheet.Cells[3, 3] = "Numéro de connaissement" ;
            worksheet.Cells[3, 4] = " Numéro de commande de base" ;
            worksheet.Cells[3, 5] = "unité de déclaration" ;
            worksheet.Cells[3, 6] = "unité commerciale" ;
            worksheet.Cells[3, 7] = "Unité de réception/expédition" ;
            worksheet.Cells[3, 8] = "date de déclaration" ;
            worksheet.Cells[3, 9] = "état du traitement" ;
            worksheet.Cells[3, 10] = "importation/exportation" ;
            worksheet.Cells[3, 11 ] = "Fermer la zone" ;
            worksheet.Cells[3, 12] = "Remarques" ;
            worksheet.Cells[3, 13] = "Heure de mise à jour" ;
            //Écrire Excexl Body
            int flag = 3 ;
            foreach (var w in lst )
            {                 flag += 1 ;                 worksheet.Cells[flag, 1] = w.entry_id_new ;                 worksheet.Cells[flag, 2] = w.TRAF_NAME ;                 worksheet.Cells[flag, 3] = w.BILL_NO;                 worksheet.Cells[ flag, 4] = w.APPR_NO ;





                feuille de calcul.Cells[flag, 5] = w.DECL_NAME ;
                feuille de calcul.Cells[flag, 6] = w.TRADE_NAME ;
                feuille de calcul.Cells[flag, 7] = w.SHIPPER ;
                feuille de calcul.Cells[flag, 8] = w.DECL_DATE ;
                feuille de calcul.Cells[flag, 9] = w.PROCESS_STATUS ;
                feuille de calcul.Cells[flag, 10] = w.EXP_IMP;
                feuille de calcul.Cells[flag, 11] = w.SUB_CUS ;
                feuille de travail.Cells[flag, 12] = w.NOTES ;
                feuille de calcul.Cells[flag, 13] = w.UPDATE_TIME ;
            }
            essayez
            {                 workbook.Saved = true;                 classeur.SaveCopyAs(FileName);             }



            catch (Exception ex)
            {                 lancer (ex);             }             classeurs.Close();             if (excel != null)             {                 excel.Workbooks.Close();                 excel.Quit();                 int Génération = System.GC.GetGeneration(excel);                 System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);                 excel = nul;                 GC.Collect(Génération);             }             GC.Collect();//强行销毁  












            //Ferme le processus Excel récemment ouvert
            System.Diagnostics.Process[] excelProc = System.Diagnostics.Process.GetProcessesByName("EXCEL");
            System.DateTime startTime = new DateTime();
            int m, killId = 0;
            for (m = 0 ; m < excelProc.Length ; m++)
            {                 if (startTime < excelProc

.StartTime)
                {                     startTime = excelProc.StartTime ;                     killId = m ;                 }             }             if (excelProc[killId].HasExited == false)             {                 excelProc[killId].Kill();             }             //Fournir le téléchargement               du fichier System.IO.FileInfo = new System.IO.FileInfo(FileName);             Response.Clear();             Response.Charset = "UTF-8";             Response.ContentEncoding = System.Text.Encoding.UTF8;             // Ajouter des informations d'en-tête pour "télécharger le fichier/enregistrer sous Spécifiez un nom de fichier par défaut pour la boîte de dialogue   














            Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(file.Name));
            // Ajouter des informations d'en-tête, spécifier la taille du fichier, afin que le navigateur puisse afficher la progression du téléchargement   
            Response.AddHeader ("Content -Length", file.Length.ToString());
            // Spécifie que le flux retourné est un flux qui ne peut pas être lu par le client et doit être téléchargé   
            Response.ContentType = "Application/ms-excel";
            / / Envoie le flux de fichiers au client   
            Response.WriteFile(file.FullName);
        }
        #endregion

 Je viens d'écrire une importation pour un ami, la dénomination n'est pas standardisée et il n'y a pas de package. Faites juste avec ça. trop paresseux pour changer

 protected void Button1_Click(object sender, EventArgs e)
        {             string strConn = "server=.;database=dydhb;uid=sa;pwd=111111";             SqlConnection sqlConn = new SqlConnection(strConn);             sqlConn.Open();


            chaîne FilePath = Server.MapPath("Book.xls");
            objet objOpt = System.Reflection.Missing.Value ;
            chaîne a, b, c, d, e1 ;
            string str = "insert into address_book(bumen,zhiwei,name,office_tel,phone,password) values(@bumen,@zhiwei,@name,@office_tel,@phone,@password)" ;

            Excel.Application excel = new Excel.Application();
            Excel.Workbooks classeurs = excel.Workbooks;
            Classeur Excel.Workbook = classeurs.Ouvrir(FilePath, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt);
            Feuille de calcul Excel.Worksheet = (Excel.Worksheet)workbook.Worksheets[1];
            for (int i = 2; i <= worksheet.UsedRange.Rows.Count; i++)
            {                 a = ((Excel.Range)(worksheet.Cells[i, 2])).Text.ToString();                 b = ((Excel.Range)(worksheet.Cells[i, 3])).Text.ToString();                 c = ((Excel.Range)(worksheet.Cells[i, 4])).Text.ToString();



                d = ((Excel.Range)(worksheet.Cells[i, 5])).Text.ToString();
                e1 =((Excel.Range)(worksheet.Cells[i, 6])).Text.ToString();
                SqlCommand sqlCmd = new SqlCommand(str, sqlConn);
                sqlCmd.Parameters.AddWithValue("@bumen", a);
                sqlCmd.Parameters.AddWithValue("@zhiwei", b);
                sqlCmd.Parameters.AddWithValue("@nom", c);
                sqlCmd.Parameters.AddWithValue("@office_tel", d);
                sqlCmd.Parameters.AddWithValue("@phone", e1);
                sqlCmd.Parameters.AddWithValue("@password", System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(e1, "md5"));

            }
            sqlConn.Close();

            classeurs.Close();
            if (excel != null)
            {                 excel.Workbooks.Close();                 excel.Quit();                 int Génération = System.GC.GetGeneration(excel);                 System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);                 excel = nul;                 GC.Collect(Génération);             }             GC.Collect();//强行销毁  







            //Ferme le processus Excel récemment ouvert
            System.Diagnostics.Process[] excelProc = System.Diagnostics.Process.GetProcessesByName("EXCEL");
            System.DateTime startTime = new DateTime();
            int m, killId = 0;
            for (m = 0 ; m < excelProc.Length ; m++)
            {                 if (startTime < excelProc

.StartTime)
                {                     startTime = excelProc

.Heure de début;
                    killId = m;
                }
            }
            if (excelProc[killId].HasExited == false)
            {                 excelProc[killId].Kill();             }         }


 

Je suppose que tu aimes

Origine blog.csdn.net/susieweijs/article/details/6342351
conseillé
Classement