精华内容
下载资源
问答
  • NULL 博文链接:https://zccst.iteye.com/blog/1233585
  • Excel数据格式校验

    2020-08-28 17:14:46
    Excel数据格式校验 使用场景: excel批量导入前对数据进行校验,不符合条件的返回带标错行的Excel文件 import com.hfcsbc.enterpriseservice.dto.ExcelValidationResult; import org.apache.poi.hssf.usermodel....

    Excel数据格式校验

    • 使用场景: excel批量导入前对数据进行校验,不符合条件的返回带标错行的Excel文件
    import com.hfcsbc.enterpriseservice.dto.ExcelValidationResult;
    import org.apache.poi.hssf.usermodel.HSSFDateUtil;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.ss.usermodel.*;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    import org.springframework.util.ObjectUtils;
    
    import java.io.*;
    import java.util.regex.Pattern;
    
    public class ExcelValidationUtils {
    
        public static final String CAR_PLATE_REGEX = "([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF])|([DF]([A-HJ-NP-Z0-9])[0-9]{4})))|([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1})";
        private static final String EXCEL_XLS = "xls";
        private static final String EXCEL_XLSX = "xlsx";
    
        public static ExcelValidationResult validation(InputStream ins, String fileName) throws IOException {
            Workbook workbook = getWorkbook(ins, fileName);
            Sheet sheet = workbook.getSheetAt(0);
            int rows = sheet.getPhysicalNumberOfRows();
            Boolean isValidatePass = true;
            for (int i = 1; i < rows; i++) {
                Row row = sheet.getRow(i);
                Cell carPlateCell = row.getCell(0);
                Cell vehicleTypeCell = row.getCell(2);
                Cell startDateCell = row.getCell(4);
                Cell endDateCell = row.getCell(5);
    
                if (carPlateCell.getCellType() != 1 || !Pattern.matches(CAR_PLATE_REGEX, carPlateCell.getStringCellValue())){
                    CellStyle style =  workbook.createCellStyle();
                    style.setFillForegroundColor(IndexedColors.RED.getIndex());
                    style.setFillPattern(CellStyle.SOLID_FOREGROUND); //背景标红
                    carPlateCell.setCellStyle(style);
                    isValidatePass = false;
                }
                if (vehicleTypeCell.getCellType() != 0 || (!ObjectUtils.nullSafeEquals(vehicleTypeCell.getNumericCellValue(),1.0) && !ObjectUtils.nullSafeEquals(vehicleTypeCell.getNumericCellValue(),2.0))){
                    CellStyle style =  workbook.createCellStyle();
                    style.setFillForegroundColor(IndexedColors.RED.getIndex());
                    style.setFillPattern(CellStyle.SOLID_FOREGROUND);
                    vehicleTypeCell.setCellStyle(style);
                    isValidatePass = false;
                }
                if (startDateCell.getCellType() != 0 || (startDateCell.getCellType() == 0 && !HSSFDateUtil.isCellDateFormatted(startDateCell))){
                    CellStyle style =  workbook.createCellStyle();
                    style.setFillForegroundColor(IndexedColors.RED.getIndex());
                    style.setFillPattern(CellStyle.SOLID_FOREGROUND);
                    startDateCell.setCellStyle(style);
                    isValidatePass = false;
                }
                if (endDateCell.getCellType() != 0 || (endDateCell.getCellType() == 0 && !HSSFDateUtil.isCellDateFormatted(endDateCell))){
                    CellStyle style =  workbook.createCellStyle();
                    style.setFillForegroundColor(IndexedColors.RED.getIndex());
                    style.setFillPattern(CellStyle.SOLID_FOREGROUND);
                    endDateCell.setCellStyle(style);
                    isValidatePass = false;
                }
            }
            return new ExcelValidationResult(isValidatePass,workbook);
        }
    
        public static Workbook getWorkbook(InputStream in, String fileName) throws IOException {
            Workbook wbook = null;
            if (fileName.endsWith(EXCEL_XLS)) {
                wbook = new HSSFWorkbook(in);
            } else if (fileName.endsWith(EXCEL_XLSX)) {
                wbook = new XSSFWorkbook(in);
            }
            return wbook;
        }
    }
    
    展开全文
  • 2、第2种方法是我们在输入数字以前先把这些表格设置成文本格式,这种方法改变不了原来数值的形态。 以上两种方法可能对数值小的有用,但遇到数值隐藏的比较多的就不适用了。 有最直接最方便的方法不管数值多大都...

    在日常工作中,我们可能会遇到数值中出现 E + 的情况,像这样:
    在这里插入图片描述
    网上的方法有的行不通,像是
    1、点击数字选项,在列表中找到自定义,然后选择右面的0,最后点击确定
    在这里插入图片描述
    点击确定后就变成下面这个样子
    在这里插入图片描述
    这样的话就把数值都变了,其实隐藏掉的内容是不一样的,这个方法是行不通的。

    2、第2种方法是我们在输入数字以前先把这些表格设置成文本格式,这种方法改变不了原来数值的形态。
    在这里插入图片描述

    以上两种方法可能对数值小的有用,但遇到数值隐藏的比较多的就不适用了。

    有最直接最方便的方法不管数值多大都可以一次性改成你想要的形态

    打开Excel文件,点击打开
    在这里插入图片描述
    打开你想要操作的表后会出现文本导入向导
    在这里插入图片描述
    点击下一步,看你文件中分隔符是什么再进行选择,我的文件中使用的是逗号,所以我选择用逗号进行分割
    在这里插入图片描述
    将你需要变化的数值选为文本格式后,点击完成即可。
    在这里插入图片描述
    在这里插入图片描述
    这样操作后数值就会改变了,没有E+的形式。

    展开全文
  • 使用Excel条件格式-重复值

    千次阅读 2018-08-12 09:23:00
    转载自:玩转Excel条件格式,解决重复值一目了然,复杂工作变轻松 讲解之前,大家先复习一下countif这个函数,它用于对符合条件的单元格...显示A列重复值,框选A列数据,选择条件格式中的新建规则。 选择公式...

    转载自:玩转Excel条件格式,解决重复值一目了然,复杂工作变轻松

    讲解之前,大家先复习一下countif这个函数,它用于对符合条件的单元格进行计数。=countif(区域,条件)。这个函数作为Excel基础函数之一,是日常数据统计最重要的函数,通过对引用区域,引用条件的改变,往往能实现出奇制胜的效果。

    大家请看范例图片。显示A列重复值,框选A列数据,选择条件格式中的新建规则。

    选择公式显示规则,输入公式=COUNTIF($A$2:$A$8,A2)>1,填充底色。大家看A列的重复值被高亮显示出来。

    我们在来看看留单。输入公式=COUNTIF(B2:$B$8,B2)>1,没有被颜色高亮显示的,即为最后单次出现的数据。大家注意看我绝对引用区域的变化。

    我们再看看留重,输入公式=COUNTIF(C2:C$7,C2)=1,跟上图正好相反的选择。没有颜色的区域,即为去除最后第一次出现,剩下的重复值。

    对比两列数据,框选两列数据,输入公式=(COUNTIF($D$2:$D$8,D2)+COUNTIF($E$2:$E$8,D2))>1。两列中重复值被高亮显示。

    检查E列的数据哪些与D列相同。框选E列,输入公式=COUNTIF($D$2:$D$8,E2)>0。

    新增F列,想跟E列一样的条件格式设置。选择E列,双击格式刷,再唰一遍F列即可。

    也可以直接复制E列,选择性粘贴格式,也能复制条件格式设置。(大家注意,复制条件格式跟复制函数公式一样,引用区域和范围会跟随单元格进行增量变化,注意检查公式噢!)

    展开全文
  • excel日期相减去除周末 在Excel中突出显示周末日期 (Highlight Weekend Dates In Excel) Yes, the weekend is over, but another one is just five days away! To make it easier to keep track of Saturdays and ...

    excel日期相减去除周末

    Yes, the weekend is over, but another one is just five days away! To make it easier to keep track of Saturdays and Sundays, you can use conditional formatting to highlight weekend dates in Excel.

    是的,周末结束了,但是又只有五天了! 为了更轻松地跟踪周六和周日,可以使用条件格式在Excel中突出显示周末日期。

    In this example, the Excel file has a list of product sales for the first half of July. We'd like to highlight the dates and sales numbers that fall on a weekend.

    在此示例中,Excel文件具有7月上半月产品销售的列表。 我们想突出显示一个周末的日期和销售数字。

    添加条件格式 (Add Conditional Formatting)

    To highlight the weekend sales:

    突出周末销售情况:

      1. Select all the cells where conditional formatting should be applied, cells H2:J16 in this example. Cell H2 is the active cell in the selection.

        选择应应用条件格式的所有单元格,在此示例中为单元格H2:J16。 单元格H2是所选内容中的活动单元格。
    ProdSalesSel
      1. On the Ribbon, click the Home tab, then click Conditional Formatting.

        在功能区上,单击“主页”选项卡,然后单击“条件格式”。
      2. Click New Rule, to open the New Formatting Rule dialog box

        单击“新建规则”,以打开“新建格式规则”对话框。
      3. In the Select a Rule Type list, click Use a formula to determine which cells to format.

        在“选择规则类型”列表中,单击“ 使用公式来确定要格式化的单元格”

      4. In the Formula box, enter a formula to check the weekday of the date in row 2, which is the active row on the worksheet:

        在“公式”框中,输入公式以检查第2行(工作表上的活动行)中日期的星期几:

        =WEEKDAY($H2,2)>5

        =星期((H2,2)> 5

    CondFormatWeekend
    1. Click the Format button, and select a Fill colour, or other formatting options, then click OK.

      单击格式按钮,然后选择填充色或其他格式设置选项,然后单击确定。
    2. Click OK to close the New Formatting Rule dialog box.

      单击“确定”关闭“新建格式规则”对话框。

    The weekend rows are highlighted in green.

    周末行以绿色突出显示。

    CondFormatGreen

    WEEKDAY函数 (The WEEKDAY Function)

    The WEEKDAY function checks the date in column H, and returns a weekday number, based on a numbering system (2) that starts with Monday as 1. Saturday is 6 and Sunday is 7, so we want to highlight weekday numbers that are greater than 5.

    WEEKDAY函数检查H列中的日期,并基于以星期一为1的编号系统(2)返回工作日编号。星期六为6,星期日为7,因此我们要突出显示大于5,

    Instead of that numbering system, we could have entered 1 or 3 as the second argument (return_type) in the WEEKDAY function.

    代替该编号系统,我们可以在WEEKDAY函数中输入1或3作为第二个参数(return_type)。

    If we entered a 1, or omitted the second argument, the numbering would start with Sunday as 1. With a 3, Monday would start as 0, and end with a 6 on Sunday.

    如果我们输入1,或省略第二个参数,则编号将以周日开头为1。以3开头,星期一将从0开始,周日以6结尾。

    WEEKDAYArg

    I used the 2 because that groups Saturday and Sunday at the end of the numbering, and we can simply test for >5.

    我使用2是因为在编号的末尾将星期六和星期日分组,所以我们可以简单地测试> 5。

    有关条件格式的更多信息 (More About Conditional Formatting)

    On the Contextures website there are basic instructions for conditional formatting, and other examples of ways you can use it.

    在Contextures网站上,有关于条件格式设置的基本说明,以及使用方式的其他示例。

    观看视频 (Watch the Video)

    Here's a short video that shows the steps in Excel 2007.

    这是一个简短的视频,显示了Excel 2007中的步骤。

    演示地址

    翻译自: https://contexturesblog.com/archives/2009/06/15/highlight-weekend-dates-in-excel/

    excel日期相减去除周末

    展开全文
  • POI导出excel日期格式

    千次阅读 2017-01-11 23:15:35
    参考帖子: ...再读本篇文章之前,请先看我的前一篇文章,前一篇文章有重点讲到POI设置EXCEL单元格格式为文本格式,剩下的设置小数、百分比、货币、日期、科学计数法和中文大写这些将在下面一一写出
  • excel日期相减去除周末 仅在Excel中允许周末日期 (Allow Weekend Dates Only in Excel) With Excel Data Validation, you can add rules to a data entry sheet, and control what people put in the cells....
  • 我的思路是把excel的时间戳转换为unix的时间戳,然后通过`new Date()`获取时间对象在转换为MySQL的DATETIME格式。 >比如在表格显示`2021/5/6 9:30 `使用程序读取就会变成成 `44322.395833333336` 要将这串...
  • 如何去除文本,excel中的Unicode 字符?

    千次阅读 2019-09-20 16:45:34
    步骤一:把数据复制到写字板上,保存然后关闭写字板, 步骤二:然后再打开写字板,每个数据后面会显示一个问号,把问号去处就可以了, 步骤三:然后把数据再复制到Excel中就可以了 ...
  • 2.1 单元格去掉中文 去掉单元格内任意位置的中文 菜单–选择开发工具–VisualBasic; 选择当前sheet,右键当前sheet,选择 插入 模块 Function delch(str As String) As String Dim reg As Object Set reg = ...
  • unity中excel转json,csv,xml

    2018-01-06 00:25:11
    将editor目录放入unity工程assets目录下,在菜单栏可见到plugins。选中unity里面一个excel文件.xlsx文件,点击plugins的exceltools,选择转换后格式默认输出到excel同路径的文件
  • 格式化选取EXCEL字符串的数字

    千次阅读 2019-01-12 19:10:54
    需求:对excel文件一列单元格的字符串选取其中的数字,然后对后面的内容进行排序,如: excel自己的排序就是一位一位的排,这里需要使用excel字符串操作的三个函数: LEFT(TEXT,len()) RIGHT(TEXT,len(text...
  • 在Python爬虫保存数据或者日常办公需要下载csv文件,但是有时打开Excel文件后的中文字符是乱码,这时候该怎么办呢,本文将分享经验,如何解决Excel打开csv文件后中文乱码的问题。 2 问题解决 第1步 首先 来看一下...
  • 很多时候我们在使用微软的SSDT开发SSIS包的时候,经常会向客户推荐共享目录存放线下Excel,我们通过SSIS的数据流任务连接Excel数据源来将Excel数据导入到SQL Server 数据库如下图: 但是非常不幸的是...
  • Content-type:application/vnd.ms-excel" ); header ( "Content-Disposition:filename=csat.xls" ); echo "&lt;!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//...
  • 使用pandas处理excel,并使用Openpyxl修改单元格格式使用pandas处理excel,并使用Openpyxl修改单元格格式需求处理基本流程查询资料过程1.读取数据,2.指标的计算:计算较为简单,新指标由某几列的四则运算生成,放...
  • EXCEL2007格式是Open XML格式,可以利用这一点直接把那个“Evaluation Warning”去掉。第一步,将xlsx文件解开到一个目录。第二步,修改里面的XML文件:1、将\xl\workbook.xml文件<sheet name="Evaluation ...
  • excel去除隐藏的分号

    千次阅读 2018-04-24 09:55:42
    excel的单元格里经常会有分号;使用替换是无法去除的。很多人用公式或者格式刷,都不行;解决方法:选择单元格,使用“清除”-》“清除格式”OK!
  • 整理一下,调用oracle的function,通过POI导出excel的功能。 问题1:边框 HSSFCellStyle style = wb.createCellStyle(); style.setBorderBottom(HSSFCellStyle.BORDER_THIN); style.setBorderLeft...
  • VBA在Excel中的应用用VBA将所有工作表去公式并保留原显示格式问题描述1.在“开发工具”选项卡选择”Visual Basic”2.插入模块运行结果 用VBA将所有工作表去公式并保留原显示格式 问题描述 出于各种各样的原因,...
  • * excel文本转换 * @param cell * @return */ public static String parseCell(Cell cell) { String value = ""; if(null==cell){ return value; } switch (cell.getCellType()) { //数值型...
  • Excel-修改Excel中的00:00:00格式

    千次阅读 2017-03-17 14:56:50
    我们发现将时分秒删了后还是显示00:00:00这种格式可以通过设置调整单元格的格式,将单元格数据显示成...设置单元格格式,显示出您目前单元格的数据设置格式,格式中带有时间的 hh:mm:ss,下图:点击确定,测试OK~~...
  • Excel 日期格式的转化

    2020-04-27 17:18:33
    时间格式的转化 很多时候会遇到日期格式不统一,可以采用Excel的分列功能。 日期处理前如下,日期为含有【’】单引号的常规格式数据。 通过分列去除单引号。 最后选择完成 ...
  • Excel_使用条件格式制作甘特图

    千次阅读 2019-10-19 21:57:36
    之前想用Excel做一个可以反映项目进度计划的自动甘特图,网上查了一些教程,但都只能反映计划,不能反映项目进度情况。然后发现Excel的联机模板里面就有一个比较好的甘特图模板,于是参考其原理仿做了一个简单的...
  • 用Pythonopenpyxl处理excel设置单元格格式

    万次阅读 多人点赞 2019-04-22 23:02:39
    #设定字体格式Font() ws=wb.active import openpyxl from openpyxl.styles import fills,colors,NamedStyle,Font,Side,Border,PatternFill,Alignment,Protection for irow,row in enumerate(ws.rows,start=1): # ...
  • Excel VBA 之单元格格式

    2020-06-03 13:38:03
    一个频繁的任务就是给选中的单元格或区域设置格式。你的VBA过程可能需要查明某个具体单元格的格式。我们可以使用NumberFormat属性来找回单元格格式: ...你可以在Excel窗口的“设置单元格格式...
  • 数据:excel一共1004条数据:包含1行表头+1000有效数据+1个空白行+2行带有格式的空白行 目的:将excel的1000条有效数据批量导入(做出限制最多只能批量导入1000行) //获得第一个表单 Sheet sheet = wb....
  • POI识别Excel表格的中文时间和日期格式单元格 本文的重点是解决两个问题: 1、POI识别Excel的时间包含中文,例如:2021年1月22日 2、POI识别Excel中单元格为日期类型或时间类型的时间数据 前言: 本文主要以示例解决...
  • VC设置EXCEL单元格格式

    千次阅读 2016-11-16 11:44:42
    示例---将所有单元格设置为文本格式:   [cpp] view plaincopy _Application app; //Excel应用程序接口  Workbooks books; //工作薄集合  _Workbook book; //工作薄  ...
  • #region IsDateTimeType 私有方法判断导入数据是否是日期格式 /// <summary> /// 私有方法判断导入数据是否是日期格式 /// </summary> /// <param name="cell"></param> /// ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,962
精华内容 8,784
关键字:

如何去掉excel中的格式