精华内容
下载资源
问答
  • 导出Excel表格
    2022-04-18 13:39:47

    一,首要条件

    需要下载phpExcel库 放到自己网页代码目,在调用函数require_once(“phpExcel_path”)
    即可对即将导出的excel表格进行格式设置。

    二,引入对象

    	$excel = new PHPExcel();
    		//创建Excel输入对象
    	$write = new PHPExcel_Writer_Excel5($excel);
    

    壹,创建表头

    定义数组
    $letter= array(‘A’,‘B’,‘C’,‘D’…);
    或者是数字
    定义表头数组:
    $tableheader = array(‘中文’,‘中文’,‘中文’,‘中文’);

    1,写入表头

    for($i = 0;$i < count($tableheader);$i++) 
    {	
    		$excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");
    }
    

    贰,记录表数据

    定义表主体数组:
    $tablebody = array(‘数据’,‘数据’,‘数据’,‘数据’,‘数据’);
    $number变量是行序号 ,根据需求更改。

    for($i = 0;$i < count($tablebody);$i++) 
    {
    	$excel->getActiveSheet()->setCellValue("$letter[$i]$number","$tablebody[$i]");
    }
    

    三,保存

    记录数据就基本完成
    最后就是保存到本地

    header("Pragma: public");
    header("Expires: 0");
    ob_end_clean();		
    header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
    //header('Cache-Control: max-age=0');
    header("Content-Type:application/force-download");
    header("Content-Type:application/vnd.ms-execl");
    header("Content-Type:application/octet-stream");
    header("Content-Type:application/download");
    header("Content-Disposition:attachment;filename=$project_code.$datetmp.xls");
    header("Content-Transfer-Encoding:binary");
    $write->save('php://output')
    

    四,设置表格格式

    基础表格保存就如上所诉,需要保存一定格式的表格需要对单元格进行设置。

    壹,创建sheet表

    $i变量相当于表示sheet表的id号,
    $sheet_name变量是表的名字,也可以不用设置,有默认名。

    $excel->createSheet();		//创建sheet
    $excel->setactivesheetindex($i);	//sheet索引
    $excel->getActiveSheet()->setTitle($sheet_name);
    

    贰,单元格设置

    1,合并单元格

    2,单元格背景色

    3,字体大小

    4,字体颜色

    5,字体背景色

    6,字体设置

    7,单元格宽高

    设置B列宽度为 10

    $excel->getActiveSheet()->getColumnDimension()->setAutoSize(true);
    $excel->getActiveSheet()->getColumnDimension(\'B\')->setWidth(10);
    
    更多相关内容
  • 主要介绍了Vue实现导出excel表格的功能,在文章末尾给大家提到了vue中excel表格的导入和导出代码,需要的朋友可以参考下
  • 能够实现「导入/导出 Excel」的第三方常用类库有 Apache poi、Java Excel(JXL)和阿里巴巴开源的 Easyexcel 等。这么多类库该怎么选呢?在这里小编给大家推荐阿里巴巴开源的「Easyexcel」。 性能对比 poi 和 jxl ...
  • 下面小编就为大家带来一篇Jquery ajax请求导出Excel表格的实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • vue导出excel表格Blob,Export2Excel
  • 通过jQuery技术,把页面上的表格导出Excel,导出时解决纯数据导出后显示科学计数法和日期型导出后为#号显示问题
  • python可视化查询mysql数据库导出excel表格
  • 关于Vue中导出excel表格需要用到的Blob.js,如有需要的可下载。
  • 易语言高级表格数据导出Excel表格源码,高级表格数据导出Excel表格,设置表格内容
  • 下面小编就为大家带来一篇JSP 导出Excel表格的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 易语言导出EXCEL表格类模块源码,导出EXCEL表格类模块,WriteBlankCell,WriteStringCell,WritePrefix,WriteSuffix,WriteCell,ExportData,导出EXCEL表格,置行数,置列数,置数据,导出,取数据,加一行,添加数据,线程_启动
  • Java利用poi导出excel表格
  • 使用C#实现了excel表格导出功能,包含xls和xlsx两种格式。 程序有添加关于NOPI的引用,有疑问可以参考我的csdn博客http://blog.csdn.net/my_clear_mind
  • 利用POI实现Java导出Excel表格,为了实现以后通用,做成了一个利用Java的反射机制做成的万金油式工具类,只需要给工具类传入固定的几个参数(映射字段的map集合,数据集合,实体类的Claas等),就可以实现导出Excel,该...
  • unity自定义导出Excel表格,用来留客户信息很好用。公司用来在登陆界面时留客户信息
  • 步骤一 npm install --save xlsx file-saver 安装依赖 需要导出的页面 引入依赖 ... // .table捕获excel表格 let wb = XLSX.utils.table_to_book(document.querySelector(.table)); let wbout = XLSX.write(wb, {
  • 易语言高级表格数据导出Excel表格源码。@易语言源码分享站。
  • 导出Excel表格

    千次阅读 2021-07-17 20:13:52
    导出Excel表格 将表格数据导出为Excel表格,其实导出数据并不是很难。我自己在页面上也写了一个导出功能,就和大家一起讲一讲。 点页面上的导出按钮后,页面会发出提示询问是否要导出全部数据,如果不需要全部导出...

    导出Excel表格

    将表格数据导出为Excel表格,其实导出数据并不是很难。我自己在页面上也写了一个导出功能,就和大家一起讲一讲。
    在这里插入图片描述
    点页面上的导出按钮后,页面会发出提示询问是否要导出全部数据,如果不需要全部导出可以根据前面的复选框来进行筛选需要导出的数据。选择好自己需要导出的数据,点击确定就会把一个带有页面上选择好的数据的Excel表格下载到电脑上。
    在这里插入图片描述
    首先我们需要先写一个导出按钮的样式:
    在这里插入图片描述
    然后接下来就写按钮的方法来,实现这一功能:

    function exporte() {
                //获取参数json
                var searchText = $("#searchText").val();
                var strTemp = '&strConditions=' + searchText;
                layer.confirm('您确定要导出全部商品信息?', { icon: 3, title: "提示" }, function (index) {
                    layer.close(index);//关闭提示框
                    //新标签页打开下载excel的url,下载excel文件
                    window.open('/SystemBase/Supplier/ExportSupplierData?' + strTemp.substring(1, strTemp.length));
                });
            }
    

    再写完控制器的代码就完成了:

    public ActionResult ExportSupplierData(string strConditions)
            {
                var list = (from tbSupplier in myModel.S_Supplier
                            join tbSupplierType in myModel.S_SupplierType on tbSupplier.supplierTypeID equals tbSupplierType.supplierTypeID
                            join tbDistrict in myModel.D_District on tbSupplier.disID equals tbDistrict.disID
                            join tbSettlementMethod in myModel.S_SettlementMethod on tbSupplier.settlementMethodID equals tbSettlementMethod.settlementMethodID
                            select new SupplierVo
                            {
                                supplierID = tbSupplier.supplierID,//供货商ID
                                supplierTypeID = tbSupplier.supplierTypeID,//供货商类型ID
                                disID = tbSupplier.disID,//地区ID
                                settlementMethodID = tbSupplier.settlementMethodID,//结算方式ID
                                supplierName = tbSupplier.supplierName,//供货商名称
                                contactPerson = tbSupplier.contactPerson,//联系人
                                contactNumber = tbSupplier.contactNumber,//联系电话
                                initialPayable = tbSupplier.initialPayable,//期初应付
                                location = tbSupplier.location,//联系地址
                                defaultNo = tbSupplier.defaultNo,//默认供货商否
                                disabledNo = tbSupplier.disabledNo,//禁用否
                                annotation = tbSupplier.annotation,//备注
                                supplierType = tbSupplierType.supplierType,//供货商类型
                                disName = tbDistrict.disName,//地区
                                settlementMethod = tbSettlementMethod.settlementMethod,//结算方式
                            });
                if (!string.IsNullOrEmpty(strConditions))
                {
                    list = list.Where(o => o.supplierName.Contains(strConditions) || o.contactPerson.Contains(strConditions) || o.contactNumber.Contains(strConditions) ||
                    o.supplierType.Contains(strConditions) || o.disName.Contains(strConditions) || o.settlementMethod.Contains(strConditions) || o.location.Contains(strConditions));
                }
                List<SupplierVo> query = list.ToList();
                string templatePath = Server.MapPath("~/Document/SupplierDataTemplate.xls");
                if (!System.IO.File.Exists(templatePath))
                {
                    return Content("导出失败,请联系网站管理员");
                }
                FileStream templateStream = System.IO.File.Open(templatePath, FileMode.Open);
                NPOI.HSSF.UserModel.HSSFWorkbook excelBookTemplate = new NPOI.HSSF.UserModel.HSSFWorkbook(templateStream);
                NPOI.SS.UserModel.ISheet sheet = excelBookTemplate.GetSheetAt(0);
                NPOI.SS.UserModel.ICellStyle style = excelBookTemplate.CreateCellStyle();
                NPOI.SS.UserModel.IRow rowTitle = sheet.GetRow(0);
                rowTitle.GetCell(0).SetCellValue("供货商信息" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                style.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
                style.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
                style.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
                style.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
                style.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
                style.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
                int index = 2;
                for (int i = 0; i < query.Count(); i++)
                {
                    NPOI.SS.UserModel.IRow row = sheet.CreateRow(index);
                    row.CreateCell(0).SetCellValue(i + 1);
                    row.CreateCell(1).SetCellValue(query[i].supplierName.ToString());
                    row.CreateCell(2).SetCellValue(query[i].supplierType.ToString());
                    row.CreateCell(3).SetCellValue(query[i].disName.ToString());
                    row.CreateCell(4).SetCellValue(query[i].contactPerson.ToString());
                    row.CreateCell(5).SetCellValue(query[i].contactNumber.ToString());
                    row.CreateCell(6).SetCellValue(query[i].initialPayable.ToString());
                    row.CreateCell(7).SetCellValue(query[i].settlementMethod.ToString());
                    row.CreateCell(8).SetCellValue(query[i].location.ToString());
                    row.CreateCell(9).SetCellValue(query[i].defaultNo == true ? "是" : "否");
                    row.CreateCell(10).SetCellValue(query[i].disabledNo == true ? "是" : "否");                row.CreateCell(11).SetCellValue(query[i].annotation == null ? "" : query[i].annotation.Trim());
                    for (int j = 0; j < row.Cells.Count; j++)
                    {
                        row.GetCell(j).CellStyle = style;
                    }
                    index++;
                }
                string fileName = "供货商信息" + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss-ffff") + ".xls";
                MemoryStream BookStream = new MemoryStream();
                excelBookTemplate.Write(BookStream);
                BookStream.Seek(0, SeekOrigin.Begin);
                return File(BookStream, "application/vnd.ms-excel", fileName);
            }
    
    展开全文
  • 易语言高级表格数据导出Excel表格源码
  • js实现由数组导出excel表格文件-附件资源
  • 这是一款非常强大实用的jQuery将网页表格数据导出excel表格文件、pdf文件和CSV文件代码,点击按钮一键导出,还支持网页打印、查询数据等。
  • 将QTableWdiget数据以Excel格式导出,亲测可以使用,文档里有注意事项,只需将文档中的tableWidget换成自己tableWidget即可
  • java 导入导出excel表格

    千次阅读 2022-04-09 15:04:28
    java 导入excel表格 业务上有需求上传excel表格并读取内容,本文记录一下该方法 首先要清楚表格的格式,这样才能建对应的实体类,例如,表格如下: 要明确有3列,每列标题是什么,从第2行开始是正式的数据。 引入...

    java 导入导出excel表格

    业务上有需求上传excel表格并读取内容,本文记录一下该方法

    表格导入

    引入相应的工具包

        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-annotation</artifactId>
            <version>4.4.0</version>
        </dependency>
    
        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-base</artifactId>
            <version>4.4.0</version>
        </dependency>
    
        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-web</artifactId>
            <version>4.4.0</version>
        </dependency>
    

    要清楚表格的格式,这样才能建对应的实体类,例如,表格如下:

    在这里插入图片描述

    要明确有3列,每列标题是什么,从第2行开始是正式的数据。

    创建对应的实体类

    注意使用@Excel注解,name即表格中列的名称,orderNum是列的顺序

    import cn.afterturn.easypoi.excel.annotation.Excel;
    import lombok.AllArgsConstructor;
    import lombok.Builder;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    
    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    public class Province {
        @Excel(name = "id", orderNum = "0")
        private String id;
    
        @Excel(name = "countryCode", orderNum = "1")
        private String countryCode;
    
        @Excel(name = "countryName", orderNum = "2", type = 10)
        private String countryName;
    
    }
    
    

    controller层写方法接收excel文件并解析

    本文举例比较简单,实际项目中可以封装一个解析excel的工具类,controller层收到请求后在service层调用工具类解析,再处理相关逻辑。本文直接在controller层解析了,不写那么麻烦了。

    import cn.afterturn.easypoi.excel.ExcelImportUtil;
    import cn.afterturn.easypoi.excel.entity.ImportParams;
    import com.Vo.Province;
    import org.apache.commons.compress.utils.Lists;
    import org.springframework.web.bind.annotation.*;
    import org.springframework.web.multipart.MultipartFile;
    import java.util.List;
    
    @RestController
    public class TestController {
    
        @PostMapping("/test/import")
        public void getList(@RequestPart MultipartFile file) {
            ImportParams params = new ImportParams();
            //从第一行开始解析
            params.setHeadRows(1);
            List<Province> provinces = Lists.newArrayList();
            try {
                //解析后每一行转换成Province对象
                provinces = ExcelImportUtil.importExcel(file.getInputStream(), Province.class, params);
            } catch (Exception e) {
                e.printStackTrace();
            }
            System.out.println(provinces);
        }
    }
    

    运行方法进行测试

    引入swagger或者使用postman或其他方法调用该接口,传入excel,看是否打印正确。
    本文使用postman进行测试,如图:

    在这里插入图片描述

    控制台输出的结果如图,已经正确读到excel的内容。

    在这里插入图片描述

    表格导出

    创建对应的实体类

    与导入表格类似,创建要导出表格的实体类,注意使用@Excel注解,标明列明和第几列。
    比如我想导出一个手机品牌的excel,第一列是序号,第二列是手机品牌名称。

    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    @Builder
    public class PhoneVo {
    
        @Excel(name = "序号", orderNum = "1")
        private int code;
    
        @Excel(name = "手机品牌名称", orderNum = "1")
        private String name;
    }
    
    

    controller层写方法导出

    本文简写,直接在controller层写逻辑方法了,可按实际情况放到service层写。
    比如我用一个枚举列举所有手机品牌,将枚举的内容导出。

    
    @Getter
    public enum PhoneEnum {
        APPLE(0,"苹果"),
        HUAWEI(1,"华为"),
        MI(2,"小米"),
        OPPO(3,"oppo"),
        SAMSUNG(4,"三星"),
        ;
    
    
        private int code;
        private String type;
    
        PhoneEnum(int code, String type) {
            this.code = code;
            this.type = type;
        }
    }
    

    controller层先把枚举内容转换成list,然后调工具类接口生成excel。

    @RestController
    @RequestMapping("/")
    public class TestController {
    
        @GetMapping("/test/download")
        public void getExcel(HttpServletResponse response) throws Exception {
        	// 表格名称
            String fileName = "手机品牌.xls";
            // 导出的表格title和sheet页名
            ExportParams exportParams = new ExportParams("手机品牌", "phone");
            // 导出的内容的list
            List<PhoneVo> list = getList();
            // 传参是要转换的对象类型,和list
            Workbook workbook = ExcelExportUtil.exportExcel(exportParams, PhoneVo.class, list);
            if (workbook != null) {
                try {
                    response.setCharacterEncoding("UTF-8");
                    response.setHeader("content-Type", "application/vnd.ms-excel");
                    response.setHeader("Content-Disposition",
                            "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20"));
                    workbook.write(response.getOutputStream());
                } catch (IOException e) {
                    throw new Exception(e.getMessage());
                } finally {
                    workbook.close();
                }
            }
        }
    
        private List<PhoneVo> getList(){
            List<PhoneVo> res = Lists.newArrayList();
            for (PhoneEnum phoneEnum : PhoneEnum.values()) {
                res.add(PhoneVo.builder().code(phoneEnum.getCode()).name(phoneEnum.getType()).build());
            }
            return res;
        }
    }
    
    

    测试

    启动工程,在浏览器中输入url,回车,即可下载excel。

    在这里插入图片描述
    导出结果如图片所示
    在这里插入图片描述

    展开全文
  • 前端导出Excel表格

    千次阅读 2022-03-04 09:21:02
    vue + xlsx实现Excel导出 简单粗暴步骤,无需花里胡哨 第一步:npm install --save xlsx@0.14.3 第二步:全局封装公共方法(或者局部定义) ... // 导出excel表格 // data:导出参数,name:表格

    vue + xlsx实现Excel导出

    简单粗暴步骤,无需花里胡哨

    • 第一步:npm install --save xlsx@0.14.3
    • 第二步:全局封装公共方法(或者局部定义)
    import XLSX from "xlsx";
    
    let common = {
      install: function ($Vue) {
        let Vue = $Vue.prototype;
        let common = {
          // 导出excel表格
          // data:导出参数,name:表格名称,cols: 每列宽度
          exportExcel(data, name, cols = []) {
            let sheet = XLSX.utils.aoa_to_sheet(data)
            sheet['!cols'] = cols
            this.downExcel(this.sheetBlob(sheet), name)
          },
          downExcel(url, saveName) {
            if (typeof url === 'object' && url instanceof Blob) {
              url = URL.createObjectURL(url) // 创建blob地址
            }
            let aLink = document.createElement('a')
            aLink.href = url
            aLink.download = saveName || '' // HTML5新增的属性,指定保存文件名,可以不要后缀,注意,file:///模式下不会生效
            let event
            if (window.MouseEvent) event = new MouseEvent('click')
            else {
              event = document.createEvent('MouseEvents')
              event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)
            }
            aLink.dispatchEvent(event)
          },
          // 将一个sheet转成最终的excel文件的blob对象,然后利用URL.createObjectURL下载
          sheetBlob(sheet, sheetName) {
            sheetName = sheetName || 'sheet1'
            let workbook = {
              SheetNames: [sheetName],
              Sheets: {}
            }
            workbook.Sheets[sheetName] = sheet
            // 生成excel的配置项
            let wopts = {
              bookType: 'xlsx', // 要生成的文件类型
              bookSST: false, // 是否生成Shared String Table,官方解释是,如果开启生成速度会下降,但在低版本IOS设备上有更好的兼容性
              type: 'binary'
            }
            let wbout = XLSX.write(workbook, wopts)
            let blob = new Blob([s2ab(wbout)], {
              type: 'application/octet-stream'
            })
            // 字符串转ArrayBuffer
            function s2ab(s) {
              if (typeof ArrayBuffer !== 'undefined') {
                var buf = new ArrayBuffer(s.length);
                var view = new Uint8Array(buf);
                for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
                return buf;
              } else {
                var buf = new Array(s.length);
                for (var i = 0; i != s.length; ++i) buf[i] = s.charCodeAt(i) & 0xFF;
                return buf;
              }
            }
            return blob
          }
        }
        // 将公共方法复制到原型上
        Vue.$common = common;
      }
    }
    
    export default common;
    
    • 第三步:main.js 中引入common
    // 调用公共方法
    import common from './views/utils/common'
    Vue.use(common);
    
    • 第四步: 组装数据
    exportExcel: function () {
      let aoa = [['姓名']]
       // 整理设备列表的数组元素
      for (let i = 0; i < this.dataList.length; i++) {
      	let a = this.dataList[i]
      	let itemDevice = [a.name]
        aoa.push(itemDevice)
       }
      // 设置列宽
      let cols = [
      	{ wch: 10 }
       ]
       this.$common.exportExcel(aoa, '表格.xlsx', cols)
    },
    
    展开全文
  • 易语言高级表格快速导出EXCEL源码,高级表格快速导出EXCEL,设置表格内容
  • excel.js(导出excel表格)

    2022-02-17 09:40:37
    excel.js(导出excel表格)
  • 纯js实现数据导出excel表格

    千次阅读 2022-03-22 15:57:27
    纯js实现数据导出excel表格

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 68,335
精华内容 27,334
关键字:

导出Excel表格