数据卡片_E015 如何批量汇总工作簿数据,形成独立工作簿信息卡片
Hi,How are you doing?
我是职场编码(CodeVoc)。
在E000中,我们介绍了Node.js、Ruby、Electron等工具下载安装。
这期,给你演示一下由Electron联合Ruby制作的小工具。
知乎视频www.zhihu.com
借助Electron官方Demo,我们很容易制作一个工具展示平台。
点击“View Demo”会弹出我们的工具界面。
一、项目需求
这个工具的主要目的是为了批量汇总工作簿数据,形成独立工作簿信息卡片。
它除了可以选择源文件,还可以选择目标文件。
点击“执行”按钮,就可以批量汇总工作簿数据,形成独立工作簿信息卡片。
二、界面设计
【html】
生成表单容器:<form></form>
生成布局标签:<div></div>
生成行内标签:<span></span>
生成单行输入框:<input id="source_line"><input id="goal_line">
生成文件选择按钮:
<input type="file" id="goal_file">
<input type="file" id="source_file">
生成普通按钮:<input type="button" id="execute">
【css】
关注四点前白后绿气泡某杺平台,搜索“职场编码”查看源码。
【javascript】
根据ID,选中source_file按钮
var source_line=document.getElementById('source_line')
给source_file按钮,添加"change"事件
source_line.value=document.getElementById('source_file').files[0].path
根据ID,选中goal_file按钮,
var goal_line=document.getElementById('goal_line')
给goal_file按钮,添加"change"事件
goal_file.value=document.getElementById('goal_file').files[0].path
execute按钮添加单击事件
execute.addEventListener("click",function(){获取参数1,获取参数2,调用})
获取参数1
var source_line=document.getElementById('source_line').value
获取参数2
var goal_line=document.getElementById('goal_line').value
调用Ruby脚本
const { spawn } = require('child_process')
const ls = spawn('ruby', ['Ruby脚本完整路径',参数1,参数2])
三、逻辑梳理
=> 基础语法
引用Ruby标准库
require "win32ole"
创建双参数入口方法
def Excel_tabulate_isolate(pth_source,pth_goal)
接收控制台传双参
Excel_tabulate_isolate(ARGV[0],ARGV[1])
单元格已用区域行数计数、创建二维数组
m=ebk.worksheets(1).usedrange.rows.count-1
arr=Array
arr=ebk.worksheets(1).usedrange.value
设置循环
m.times{}
(1..m).each{|i|
}
=> 对象模型
创建可视化Excel应用
@eap=WIN32OLE::new("excel.application");@eap.visible=true
打开、关闭Excel工作簿
ebk=@eap.workbooks.open(pth_source)
ebk=@eap.workbooks.open(pth_goal)
ebk.close
操作Worksheets、Workbooks对象(复制、保存)
ebk.worksheets(1).copy(nil,ebk.worksheets(1))
@eap.workbooks(2).saveas(File.dirname(pth_source)+''+ebk.worksheets(i+1).name+'.xls',56)
执行数组写入Excel单元格区域操作
ebk.worksheets(i+1).range("b2").value=arr[i][1]
ebk.worksheets(i+1).range("b3").value=arr[i][2]
ebk.worksheets(i+1).range("b4").value=arr[i][3]
ebk.worksheets(i+1).range("b5").value=arr[i][4]
ebk.worksheets(i+1).range("d2").value=arr[i][5]
ebk.worksheets(i+1).range("d3").value=arr[i][6]
ebk.worksheets(i+1).range("d4").value=arr[i][7]
ebk.worksheets(i+1).range("d5").value=arr[i][8]
ebk.worksheets(i+1).name=arr[i][1]
关注四点前白后绿气泡某杺平台,搜索“职场编码”查看源码。
数据卡片_E015 如何批量汇总工作簿数据,形成独立工作簿信息卡片相关推荐
- mysql命令行批量添加数据_mysql命令行批量插入100条数据命令
先介绍一个关键字的使用: delimiter 定好结束符为"$$",(定义的时候需要加上一个空格) 然后最后又定义为";", MYSQL的默认结束符为" ...
- excel数据表单_Excel中的工作表数据输入表单
excel数据表单 With a bit of programming, you can make it easy for users to enter data in an Excel workbo ...
- excel数据输入窗体控件_工作表数据输入或Excel用户窗体
excel数据输入窗体控件 If you're building an Excel workbook, in which users with basic Excel skills will ente ...
- python 录入数据不重复_pythonDjango批量导入不重复数据
#coding:utf-8 import os os.environ.setdefault("DJANGO_SETTINGS_MODULE", "www.settings ...
- 美国人口普查数据预测收入sklearn算法汇总1: 了解数据以及数据预处理
一. 了解数据集 任务目标:建立分类模型预测一个人的收入能否超过五万美元 人口普查数据集: https://archive.ics.uci.edu/ml/datasets/adult import p ...
- 使用Python批量处理工作簿和工作表
使用Python批量处理工作簿和工作表 批量新建并保存工作簿 批量打开一个文件夹中的打开工作簿 批量重命名一个工作簿的所有工作表 批量重命名多个工作簿 批量重命名多个工作簿中的同名工作表 将一个工作簿 ...
- 美国人口普查数据预测收入sklearn算法汇总3之ROC: KNN,LogisticRegression,RandomForest,NaiveBayes,StochasticGradientDece
接<美国人口普查数据预测收入sklearn算法汇总1: 了解数据以及数据预处理> <美国人口普查数据预测收入sklearn算法汇总2: 特征编码, 特征选择, 降维, 递归特征消除& ...
- 4、Power Query-智能汇总工作簿下的指定或所有工作表数据
数据来源之工作簿--智能提取汇总指定文件夹下的工作簿数据 要求:根据指定目录的文件夹内的所有工作薄进行汇总分析. 工资下每个年份每个部门1-12月的工资在此维护,现在的要求是要看看每个年份,每个月一共 ...
- 3、Power Query-智能汇总工作簿下的指定或所有工作表数据
数据来源之工作表(智能汇总工作簿下的所有工作表数据) 本节要求:统计出数据源工作表里面各个类别,各年的总数量. 比如下图的,是在D盘Power Query文件夹下面的一个数据源文件: 其实会用sql语 ...
最新文章
- Design Pattern IDisposable Pattern C
- python有多少关键字_Python挖词脚本,挖出几十万关键词不是梦带搜索量
- Go sycn.Map知识点
- Condition - Java多线程编程
- Ampere Altra Max 对比测试数据公布,性能能效双领先
- Mybatis-jar-lib
- 《数据中台:让数据用起来》读书笔记
- 面试、笔试中常用的SQL语句(数据库知识必杀)一共50个!!!
- Windows操作系统正版盗版知识简介
- Mongo 多语言模糊匹配
- 前端学习笔记 - 移动端Web开发
- 苹果输入法怎么换行_朋友圈长文字不折叠输入法,复制粘贴避免只显示一行
- 怎样花两年时间去面试一个人(转自MIND HACKS)
- IDEA提交git代码,配置文件乱码
- 找金币问题/只秤一次找出真假金币在哪个箱子
- 03 学生免费注册Pycharm专业版
- 程序设计阶段性总结报告一
- 加油,打工人~杨斯维特珍视您的每一滴汗水!
- Bone-Age-Detection-From-X-Ray
- 网络安全期末考试题目
热门文章
- sun.misc.BASE64Encoder 不建议使用java.sun自带包中的内容
- SQL基础语句(详解版)
- Centos7 使用Docker 部署Nginx+mysql+tomcat+调试联通_03
- Vue 实现 Open Graph 分享预览
- plink源码_plink: 等位型计数(allele count)
- android java 实体类 object变量 保存_Java中的实体类--Serializable接口、transient 关键字...
- mysql 进阶方向_mysql数据库入门、进阶和提升(续二)
- Python 递归函数 - Python零基础入门教程
- 2021中卫一中高考成绩查询,2021年宁夏高中排名及分数线 高考本科升学率排行榜...
- html视频标签略缩图,JS可以截取video的标签视频缩略图吗?