精华内容
下载资源
问答
  • 因为又要把整个 Excel 放在公共盘,又不能把内容直接别人看,这是闹哪样? 不过还是这样吧,做了吧,当作是为了工资。 首先我有一个 Sheet 叫 DBR ,这个 Sheet 就是数据源,在平时要隐藏起来,而因为隐藏的时候是...

    这个主要是记录给我为公司写的小宏,都什么年代了,还写 VB宏 ,我觉得绝望。
    主要在之前的基础上实现了两个功能:

    1. 在查询数据的时候把数据内容 Sheet 显示

    因为又要把整个 Excel 放在公共盘,又不能把内容直接给别人看,这是闹哪样?
    不过还是这样吧,做了吧,当作是为了工资。
    首先我有一个 SheetDBR ,这个 Sheet 就是数据源,在平时要隐藏起来,而因为隐藏的时候是更新和读取不了数据的,所以要展开这个 Sheet ,这个好做,代码是:

    Sub subHideDBR()
        Sheets("DBR").Select
        ActiveWindow.SelectedSheets.Visible = False
    
    End Sub
    
    Sub subShowDBR()
        Sheets("DBR").Visible = True
    End Sub
    
    

    完成,完事。

    2.在平日要把 Sheet 上锁,用宏的时候打开

    这个其实在集团下发的 Sheet 上面有这个功能,但因为集团的数据我不敢带回家(奶奶的,连集团都还是用 Excel 宏,有意义吗?什么年代了?),所以就找资料吧。

    
    Const strBookPW As String = "Shit"
    Const strSheetPW As String = "Damn"
    
    '锁整个工作本'
    Sub subLockBook()
        ActiveWorkbook.Protect strBookPW, Structure:=True, Windows:=False
    End Sub
    
    '解锁整个工作本'
    Sub subUnLockBook()
        ActiveWorkbook.Unprotect strBookPW
    End Sub
    
    '锁 Sheet'
    Sub subLockSheet()
        ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
            False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
            AllowFormattingRows:=True, Password:=strSheetPW
    End Sub
    
    '解锁 Sheet'
    Sub subUnLockSheet()
        ActiveSheet.Unprotect Password:=strSheetPW
    End Sub
    

    最后顺便在 Excel 工程中的 ThisWorkbook 对象内加入:

    Private Sub Workbook_Open()
        Call subLockBook
        Sheets("Trend Input").Select
        Call subLockSheet
    End Sub
    

    方便在打开文件时对文件进行锁。

    展开全文
  • excel表格锁定怎么解锁 让用户锁定或解锁Excel工作簿 (Let Users Lock or Unlock an Excel Workbook)Some people like an Excel workbook that's locked down, so they can't accidentally mess anything up....

    excel表格锁定怎么解锁

    Some people like an Excel workbook that's locked down, so they can't accidentally mess anything up. They just want to go to the data entry section, put in their data, and get out alive.

    有些人喜欢被锁定的Excel工作簿,因此他们不会意外地弄乱任何东西。 他们只想转到数据输入部分,放入他们的数据,然后活着出去。

    Other people hate Excel workbooks that are protected. Maybe they know a bit more about Excel, and are comfortable making changes.

    其他人讨厌受保护的Excel工作簿。 也许他们对Excel有更多了解,并且乐于进行更改。

    Or, they've been assigned to manage a workbook, and don't want to bother with worksheet protection, because it slows them down.

    或者,他们已经被分配来管理工作簿,并且不想打扰工作表保护,因为这会使它们变慢。

    赋予用户控制权 (Give the Users Control)

    One of my clients has plants all over the world, and we've made a similar data collection workbook for each plant.

    我的一位客户在世界各地拥有工厂,我们为每个工厂制作了类似的数据收集工作簿。

    On the last sheet of the workbook, I've added a drop down list, where the user can select TRUE or FALSE.

    在工作簿的最后一页上,我添加了一个下拉列表 ,用户可以在其中选择TRUE或FALSE。

    LockFalse
    • If the setting changed to FALSE, a macro runs, to unprotect all the worksheets.

      如果设置更改为FALSE,则会运行一个宏,以取消保护所有工作表。
    • If the setting is changed to TRUE, all the sheets are protected.

      如果将设置更改为TRUE,则所有纸张都将受到保护。

    The TRUE/FALSE option is a quick and easy way for users to control the workbook settings, and seems to be working well.

    TRUE / FALSE选项是用户控制工作簿设置的快速简便的方法,并且似乎运行良好。

    代码 (The Code)

    There's code on the worksheet module that runs when the Lock cell's value is changed. To see the code, right-click on the sheet tab where the drop down list is located, and click View Code.

    更改“锁定”单元格的值时,工作表模块上会运行代码 。 要查看代码,请右键单击下拉列表所在的工作表选项卡,然后单击查看代码。

    Here's the bit of code that checks the Lock cell, and protects or unprotects the sheets. In the sample file, there is the full code, and another example that protects or unprotects with a password.

    这是一些代码,用于检查Lock单元并保护或取消保护工作表。 在示例文件中,有完整的代码,还有另一个使用密码保护或取消保护的示例。

    If Target.Address = wsListsAll.Range("Lock").Address Then For Each ws In ThisWorkbook.Worksheets If bLock = True Then ws.Protect Else ws.Unprotect End If Next ws End If

    如果Target.Address = wsListsAll.Range(“ Lock”)。Address,则为此Workbook.Worksheets中的每个ws如果bLock = True,则ws.Protect其他ws.Unprotect结束,如果下一个ws结束,如果

    下载样本文件 (Download the Sample File)

    If you'd like to see all the code, you can download the sample file from the Worksheet Protection Selector page on my Contextures website.

    如果您想查看所有代码,则可以从Contextures网站上的“工作表保护选择器”页面下载示例文件。

    On that page, scroll down to the Download section, and you'll see a link to the file.

    在该页面上,向下滚动到“下载”部分,您将看到该文件的链接。

    The file contains macros, so you'll have to enable them to test the code. _______________________

    该文件包含宏,因此您必须使它们能够测试代码。 _______________________

    翻译自: https://contexturesblog.com/archives/2009/09/02/let-users-lock-or-unlock-an-excel-workbook/

    excel表格锁定怎么解锁

    展开全文
  • 【已验证】Excel2010密码破解忘记了怎么办解锁开 2019年6月12日,我自己下载下来跑了一遍,安装后确实报错 “Cannot find language file with handle English”,但是不影响后续的使用。...excel为 2010版本。
  • 由于(业务上锁和解锁异步),导致我需要使用redis 自定义锁. 如果上锁和解锁是同步,推荐使用Redisson组件,解决了锁的续时,服务宕机后的死锁问题,锁的可冲入, 这里有两个问题: 为什么要设置锁的过期时间? 锁...

    reids实现分布式锁

    由于(业务上锁和解锁异步),导致我需要使用redis 自定义锁.

    如果上锁和解锁是同步,推荐使用Redisson组件,解决了锁的续时,服务宕机后的死锁问题,锁的可冲入,

    这里有两个问题:

    • 为什么要设置锁的过期时间?
    • 回答:因为防止出现死锁。
    • 锁的过期时间设置多久合适?
    • 回答: 由于自己实现锁续期很麻烦,且场景bug很多,所以redisson有一个看门狗watchDog机制,源码默认是上锁是30s,当每次执行到 过期时间三分之一 (10s)则给锁进行续命。
    • 解锁过程中服务器宕机导致没有解锁成功?
    • 回答:正常异常情况finally可以保证解锁,但是服务器宕机造成死锁,redisson有一个watchDog机制当服务器宕机后watchDog则也随之死亡。
      这不是重点,科普一下,只是想告诉大家,redisson确实很强大,能用则用,不要自己搞。
      在这里插入图片描述
      过程:
      就是这么简单,我们只需要通过它的api中的lock和unlock即可完成分布式锁,他帮我们考虑了很多细节:

    答案:核心内容

    • 1:redisson所有指令都通过lua脚本执行,redis支持lua脚本原子性执行

    • 2:redisson设置一个key的默认过期时间为30s,如果某个客户端持有一个锁超过了30s怎么办? redisson中有一个watchdog的概念,翻译过来就是看门狗,它会在你获取锁之后,每隔10秒帮你把key的超时时间设为30s 这样的话,就算一直持有锁也不会出现key过期了,其他线程获取到锁的问题了。

    • 3:redisson的“看门狗”逻辑保证了没有死锁发生。 (如果机器宕机了,看门狗也就没了。此时就不会延长key的过期时间,到了30s之后就会自动过期了,其他线程可以获取到锁)

    ap方法如下
    在这里插入图片描述

    开始正题 为什么要自定义锁,因为业务上异步解锁,要考虑地方是异常解锁情况

    自定义Redis 实现分布式锁 需求实现 同一时间一条词条只允许一个管理编辑,其他管理员访问改词条则访问不成功

    1.上锁 : 设置过期时间为了保证解决死锁问题,保证上锁和过期时间的原子性,此外还要考虑浏览器突然关闭没有正常执行解锁操作。由于设置了过期时间,但是用户没有在指定时间内提交业务,所以锁的续期问题需要解决。

    2.锁续期:锁的续期 ,当停留在加锁页面,前端定时轮询调用锁的续期接口,保证用户提交正常。设置设置最长停留时间,超过则不调用续时解决锁无限制一直续期问题。

    3.解锁:保证上锁的用户和解锁的用户是一个人同一次操作,如何保证,当上锁时候会自定义一个会话id(uuid),上锁时将会话id存放在value,解锁的时候需要带着会话id过来,判断会话id是否是一直一致,解决了多用户误解锁问题。

    补充:有一些场景 解锁为什么要给先给锁续期 ,保证方法执行完时间够用,为了解决查到锁的一瞬锁失效了,B线程抢占到锁了,查到锁之后会执行删除锁。此时删除的锁是B的,做好解决办法就是在解锁 和提交更新sql 之前锁是百分之百存在的不会过期 就解决了。

    maven

    <!-- redis-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    
    package com.excel.batch.redislock.controller;
    
    import cn.hutool.core.lang.UUID;
    import cn.hutool.core.util.ObjectUtil;
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.data.redis.core.RedisTemplate;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    import java.util.concurrent.TimeUnit;
    
    /**
     * @Author: 宋忠瑾
     * @Description: redis实现分布式锁,因为业务拆分的
     * @Date: Create in 17:33 2021/9/7
     */
    @RestController
    @Slf4j
    public class RedisDistributedLock {
        /**
         * redis上锁到期时间
         */
        public static final int EXPIRATION_TIME = 10;
        /**
         * redis上锁续期时间
         */
        public static final int RENEWAL_TIME = 30;
        /**
         * redis操作模板
         */
        @Autowired
        private RedisTemplate redisTemplate;
    
        /**
         * redis上锁判断 是否存在
         *
         * @return 成功但会uuid 失败返回null
         * @Description 上锁
         * @Method 上锁判断 是否存在
         * @Author 宋忠瑾
         * @Date 2021/9/7 17:35
         */
        @GetMapping("tryLock")
        public String testLocktime() {
            //每一次访问生成一个会话id
            String uuid = UUID.fastUUID().toString();
            //上锁
            Boolean lock = redisTemplate.opsForValue()
                    .setIfAbsent("bravo1988_distributed_lock", uuid, EXPIRATION_TIME, TimeUnit.SECONDS);
            if (lock) {
                log.info("上锁");
                return uuid;
            } else {
                log.error("上锁失败");
                return null;
            }
        }
    
    
        /**
         * redis锁续期
         *
         * @param key 键值
         * @return Boolean
         * @Description 锁续期
         * @Method 锁续期
         * @Author 宋忠瑾
         * @Date 2021/9/7 17:36
         */
        @GetMapping("tryLockRenew")
        public Boolean testLockSuccess(@RequestParam String key) {
            if (redisTemplate.hasKey(key)) {
                redisTemplate.expire(key, RENEWAL_TIME, TimeUnit.SECONDS);
                //上锁
                log.info("续期成功:{}", true);
                return true;
            } else {
                //上锁失败
                log.info("续期失败: 当前锁不存在");
                return false;
            }
        }
    
        /**
         * 解锁
         *
         * @param key   键值
         * @param value 存放的uuid
         * @return Boolean
         * @Description 判断用户生成的uuid
         * @Method
         * @Author 宋忠瑾
         * @Date 2021/9/7 17:37
         */
        @GetMapping("unLock")
        public Boolean testUnLock(@RequestParam String key, @RequestParam String value) {
        //先给锁续期 保证方法执行完时间够用,为了解决查到锁的一瞬锁失效了,B线程抢占到锁了,查到锁之后会执行删除锁
         redisTemplate.expire(key, RENEWAL_TIME, TimeUnit.SECONDS);
            //获取当前redis key的value
            Object redisValue = redisTemplate.opsForValue().get(key);
            if (ObjectUtil.isNotNull(redisValue) && redisValue.toString().equals(value)) {
                //解锁 判断是否是同一个人
                redisTemplate.delete(key);
                log.info("解锁成功");
                return true;
            } else {
                log.info("当前用户uuid不一致或当前不存在锁,解锁失败");
                return false;
            }
        }
    }
    
    展开全文
  • 中已经详细的进行了介绍 , 但是实际开发中, 往往还需要设置excel字体,颜色,行高,列宽等属性, 有时候还需要住单元格, 防止别人讲数据随意篡改. 废话不多说, 直接代码 2. 住单元格 导出excel , 自...

    1. 前言

    poi框架可以支持我们在java代码中, 将数据导出成excel , 在上一篇
    如何使用POI导出excel表格,以及处理浏览器无法识别下载文件的问题

    中已经详细的进行了介绍 , 但是实际开发中, 往往还需要设置excel字体,颜色,行高,列宽等属性, 有时候还需要锁住单元格, 防止别人讲数据随意篡改.

    废话不多说, 直接上代码

    2. 锁住单元格

    导出excel , 自然就有导入excel 了, 比如导出一些数据出来, 修改一些再导入进去, 但是这时, 一些基本信息我们不希望用户随意去修改, 这里就用到了excel的锁
    这里写图片描述

    sheet.protectSheet(密码)

    代码:

    // 创建Excel文件
    HSSFWorkbook workbook = new HSSFWorkbook();
    HSSFSheet sheet = workbook.createSheet(DateUtils.getDate("yyyyMMdd"));
    //锁定sheet
    sheet.protectSheet("zgd");

    这样的话, 这个sheet都会被锁定

    但是我们又希望开放一些单元格可以修改 , 这个时候就要细粒度的进行设置了
    创建一个cellStyle:

     CellStyle unlockCell = workbook.createCellStyle();
     unlockCell.setLocked(false);

    然后在我们不需要锁定的单元格上, 给它这个 cellStyle

     // 设置dataRow这一行的第i个单元格不锁定
     dataRow.getCell(i).setCellStyle(unlockCell);

    3. 设置列宽

    在锁定了sheet之后, 会发现一个问题, 就是列宽都不能改变了

    这个时候没办法, 只能自己设置列宽了, 现在网上找到的设置列宽的方法有以下几个:

    1.自适应列宽度:

    • sheet.autoSizeColumn(1);
    • sheet.autoSizeColumn(1, true);
      这两种方式都是自适应列宽度,但是注意这个方法在后边的版本才提供,poi的版本不要太老。 注意:第一个方法在合并单元格的的单元格并不好使,必须用第二个方法。

    经过测试,这种自适应的api在遇到行数多一点的数据的时候,就会耗费大量的时间,1000行花了2分钟!!!所以尽量不要用

    sheet.trackAllColumnsForAutoSizing();
    sheet.autoSizeColumn(i);

    而且这两个方法对英文数字还好, 对中文支持的并不好: 见图
    这里写图片描述

    2.用数组将大概的宽度设置好,手动set宽度

    int[] width = {xxx,xxx};
    for循环
    sheet.setColumnWidth(i,width[i]);

    3.自己根据一列数据中的最长的字符串长度设置宽度

    所以还是得自己费心费力去diy :

    判断这一列的最长字符串,然后
    int length = str.getBytes().length;
    sheet.setColumnWidth((short)列数,(short)(length*256));
    

    这里经过我反复尝试,我个人觉得把最大宽度限制在10000到15000左右是比较合适的, 然后剩下的就交给excel的自动换行

    像我这里有很多行的数据, 不知道哪一行的内容最长, 这里简单提供两种思路(方法是很多的, 能达到目的就行):
    1. 用一个Map<Integer, List>, key是指具体哪一列, List中放的是每行的这一列的内容的长度 , 每遍历一行的一列, 就map.put(i, list.add(length)), 然后用Collections.max(map.get(i))来获取第i列的最长的长度
    2. 还是一样,用一个map: `Map<Integer, Integer>,key是指具体哪一列,value是每行的这一列的内容的长度, map.put(i,Math.max(length,map.get(i))),来确保map中的key对应的value永远是目前的最大的长度.

    我这里使用的第二种:
    设置自动换行后,不要设置固定的行高,否则超出的部分也会被遮住不显示

    // 创建Excel文件
    HSSFWorkbook workbook = new HSSFWorkbook();
    HSSFSheet sheet = workbook.createSheet("sheet");
    //设置样式
     CellStyle blackStyle = workbook.createCellStyle();
    //自动换行*重要*
     blackStyle.setWrapText(true);
    
    //存储最大列宽
    Map<Integer,Integer> maxWidth = new HashMap<>();
    // 标题行
    HSSFRow titleRow = sheet.createRow(0);
    titleRow.setHeightInPoints(20);//目的是想把行高设置成20px
    titleRow.createCell(0).setCellValue("sku编号");
    titleRow.createCell(1).setCellValue("商品标题");
    titleRow.createCell(2).setCellValue("商品名");
    // 初始化标题的列宽,字体
    for (int i= 0; i<=3;i++){
        maxWidth.put(i,titleRow.getCell(i).getStringCellValue().getBytes().length  * 256 + 200);
        titleRow.getCell(i).setCellStyle(blackStyle);//设置自动换行
    }
    
    for (Map<String, Object> map : list) {
        int currentRowNum = sheet.getLastRowNum() + 1;
        //数据行
        HSSFRow dataRow = sheet.createRow(currentRowNum);
        // 记录这一行的每列的长度
        List<Object> valueList = new ArrayList<Object>();
    
        String val0 = map.get("skuId") == null ? "—" : ((Double) (map.get("skuId"))).intValue()+"";
        valueList.add(val0);
        dataRow.createCell(0).setCellValue(val0);
        String val1 = map.get("title") == null ? "" : map.get("title").toString();
        valueList.add(val1);
        dataRow.createCell(1).setCellValue(val1);
        String val2 = map.get("goodsName") == null ? "" : map.get("goodsName").toString();
        valueList.add(val2);
        dataRow.createCell(2).setCellValue(val2);
        String val3 = map.get("catName") == null ? "" : map.get("catName").toString();
        valueList.add(val3);
        dataRow.createCell(3).setCellValue(val3);
        String val4 = map.get("brandName") == null ? "" : map.get("brandName").toString();
    
         for(int i = 0;i<=3;i++){
             int length = valueList.get(i).toString().getBytes().length  * 256 + 200;
             //这里把宽度最大限制到15000
             if (length>15000){
                 length = 15000;
             }
             maxWidth.put(i,Math.max(length,maxWidth.get(i)));
              dataRow.getCell(i).setCellStyle(blackStyle);//设置自动换行
        }
    }
    
    
    for (int i= 0; i<=3;i++){
          //设置列宽
         sheet.setColumnWidth(i,maxWidth.get(i));
     }

    现在的话, 列宽虽然是比较生硬的套用内容长度来设置, 不过也比之前好多了, 列宽是不能超过256*256的,否则会报错,所以我这里设置的最大列宽为15000,超出的部分会自动换行

    这里写图片描述

    4. 设置行高

    行高就很简单了,

    titleRow.setHeightInPoints(20);//目的是想把行高设置成20px

    注意,设置了固定行高,自动换行就不会自适应行高了

    5. 设置字体,颜色

    创建CellStyle , 然后创建HSSFFont , 再把HSSFFont注入给CellStyle , 在把CellStyle给cell设置

    // 设置字体
    CellStyle redStyle = workbook.createCellStyle();
    HSSFFont redFont = workbook.createFont();
    //颜色
    redFont.setColor(Font.COLOR_RED);
    //设置字体大小
    redFont.setFontHeightInPoints((short) 10);
    //字体
    //redFont.setFontName("宋体");
    redStyle.setFont(redFont);
    
    HSSFCell cell13 = titleRow.createCell(13);
    cell13.setCellStyle(redStyle);
    cell13.setCellValue("注意:只允许修改销售价,供应价,市场价和库存");

    这里写图片描述

    6. 合并单元格

    合并单元格的话,建议先合并,合并之后,在合并的第一行第一列set值就可以了

    //这里代表在第0行开始,到0行结束,从0列开始,到10列结束,进行合并,也就是合并第0行的0-10个单元格
    CellRangeAddress cellRange1 = new CellRangeAddress(0, 0, (short) 0, (short) 10);
                sheet.addMergedRegion(cellRange1);
                CellRangeAddress
    展开全文
  • 步骤1:选择模式 打开电脑的疯师傅Excel解密助手,选择 “移除限制”模式。 步骤2:选择Excel文件 添加需要移除限制密码的Excel文件,添加以后单击“移除”按钮。 步骤3:解除限制 只需等待几秒,软件即可成功...
  • excel数据导入oracle

    千次阅读 2015-06-05 16:02:34
    现在有excel的数据想导入到oracle表中,excel的列和oracle表的字段是一样的,excel的内容和表的截图如下: 复制excel的内容到oracle表里,只需要复制、粘贴。不需要安装其它软件或者配置什么文件。具体步骤如下: ...
  • excel vsto

    2020-08-31 19:33:47
    面对上锁的sheet怎么添加、删除行列
  • excel基础

    千次阅读 多人点赞 2020-11-15 17:00:40
    相对引用与绝对引用:相对引⽤和绝对引⽤的核⼼就是正确理解$符号(绝对引⽤符)的作⽤,可以将它理解为⼀把,放到⾏号或列标的前⾯,可以将其锁定,在复制的过程中,不再发⽣位移变化。 ...
  • 拿去手机店,一般都会你刷机,但是这种方法处理后里面的联系人,短信等资料都会没了。其实如果是安卓手机,重设密码和解锁还是很容易的。今天我就教大家两招,快来看看吧!安卓手机忘记解锁密码怎么办?第一招1、...
  • 其实,Excel可以修改图表的数据。下面来看看Excel生成和修改饼图图文教程。Excel如何一键生成饼图在Excel表格中,我们常用的图表有饼图、柱状图以及折线图,这三种图表所侧重的都不同,饼图侧重份额、柱状图侧重数...
  •  我们平常使用office办公的时候,经常会将Excel、Word这样的文档放在桌面,但是有些时候经常会发现这些文档的图标出现一个的痕迹,要怎么去除呢?下面小编就带着大家一起学习一下吧!  操作方法:  1、win+...
  • excel组合汇总 Excel汇总20160307 (Excel Roundup 20160307) In this week's Excel roundup, Power Map, Excel formula errors, cell references, and more. 在本周的Excel综述中,Power Map,Excel公式错误,...
  • excel组合汇总 Excel汇总20180322 (Excel Roundup 20180322)Spring has finally arrived, so here is a "Goodbye Winter" Excel Roundup, with articles that I've read recently, and upcoming Excel events and ...
  • 住单元格 导出excel , 自然就有导入excel 了, 比如导出一些数据出来, 修改一些再导入进去, 但是这时, 一些基本信息我们不希望用户随意去修改, 这里就用到了excel sheet.protectSheet(密码) 代码: // 创建...
  • 昨天的留言中,有位小伙伴问“Sara,能不能讲讲怎么把工资表中的单元格,单元格的格式锁定?”。其实,关于在Excel表格中锁定单元格这事儿,Sara...以下图为例,如何将“业绩数据分析”和“数据结果”两栏的公式...
  • I have a list of excel files with similar last row. It contains private information about client (his name, surname, phone). Each excel file corresponds to a client. I need to make one excel file with...
  • 破解EXCEL密码,绝对好用。可以查看原密码 破解后可以重新上锁
  • Excel集成工具

    千次阅读 2013-10-25 22:22:25
    Excel集成工具箱是著名微软办公软件EXCEL(Microsoft Office for EXCEL)增强型插件。包括190个菜单功能和100个左右自定义函数,集290个工具于一身,但体积小于9MB。当安装集成工具箱后,如果您使用Excel 2003,则将...
  • 补货提醒excel整理

    2020-12-15 17:12:39
    excel透视表 解锁数据透视表 vlookup函数 VLOOKUP函数、数据透视表 补货表使用 手动填写 每个产品每天的销量,源数据表整理 FBA库存表 在途库存 备货周期 上架周期 物流周期 期望销售...
  • Excel的所有功能都是需求导向的,正因为有客户在...为了在Excel这样的异常灵活的工具规范地生成所需的数据源,是需要一定的前期工作的准备的。在数据化规范录入,不止有一波提及的数据有效性验证,也有之前提...
  • 电脑应用是一款简单好用的电脑应用软件,通过应用用户可以轻松的将一些不想别人使用的软件加密,这样别人就不能打开这个软件了,同时软件还非常适合家长使用,家长可以下载软件将孩子喜欢玩的游戏全部加密,...
  • excel 当前工作簿名称 在Excel工作簿中跟踪名称 (Keep Track of Names in Excel Workbook)You probably use defined names in some of your Excel workbooks. We'll look at a built-in way to list the names in a ...
  • 打开Excel的界面,横竖排列的方格,看起来很顺眼,似乎和人与生俱来的习惯相同,从左到右、自,自然得体,十分的舒服,让人很容易接受。   她的操作也极其方便简单。最初级的操作只需在单元格中依次输入数据...
  • 冰河手把手教你撸Excel报表工具,俘获运营小姐姐的心,一起加油,搞起来!!冰河强烈建议收藏!!
  • 从桌面看应该是,前面一个窗口输入查询条件,然后点确定,后面有个excel显示结果。 类似下图这种 一、打开窗口 窗体俗称对话框,在可视化的面向对象的编程软件中都应该有。在VBA中也有,可以打开excel->...
  • EXCEL操作精选

    2012-01-29 14:40:09
    如果我们在用Excel XP处理庞大的数据信息时,不注意讲究技巧和方法的话,很可 能会花费很大的精力。因此如何巧用Excel来快速输入信息就成为各个Excel XP用 户非常关心的话题... 1、快速输入大量含小数点的数字 ...
  • EXCEL导入ORACLE

    2010-07-20 10:31:00
    EXCEL导入ORACLE的三种方法
  • 原标题:Python自动化如何处理excel文件数据在python自动化中,经常会遇到对数据文件的操作,比如添加多名员工,但是直接将员工数据写在python文件中,不但工作量大,要是以后再次遇到类似批量数据操作还会写在...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,111
精华内容 4,044
关键字:

如何给excel上锁