中企动力 > 商学院 > 怎样用excel编程
  • ?

    VS2017下编写C 程序读写Excel文件

    香旋

    展开

    前言:

    有时候我们需要对Excel文件进行特殊处理,这种情况下写个小程序是很方便的。最近刚开始学C#,正好有同学需要处理个Excel文件,我就写了一个程序。发现网上虽有资料,但很多行不通,特此记录,以免后来人少走弯路。

    正文:

    首先,界面如下,当然,程序员不需要看界面,从代码中就可以直接学习。

    然后,需要下载一个文件“Microsoft.Office.Interop.Excel.dll”,自行网搜。导入到引用之中。然后也把System.Windows.Forms加入引用。

    最后,上代码。

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.Threading.Tasks;

    using System.Windows;

    using System.Windows.Controls;

    using System.Windows.Data;

    using System.Windows.Documents;

    using System.Windows.Input;

    using System.Windows.Media;

    using System.Windows.Media.Imaging;

    using System.Windows.Navigation;

    using System.Windows.Shapes;

    //ghw:add

    using System.Windows.Forms;

    using Excel = Microsoft.Office.Interop.Excel;

    namespace WpfExcel

    {

    ///

    /// MainWindow.xaml 的交互逻辑

    ///

    public partial class MainWindow : Window

    {

    public Excel.Application excel;

    public Excel.Workbooks wbs;

    public Excel.Workbook wb;

    public Excel.Worksheets wss;

    public Excel.Worksheet ws;

    public MainWindow()

    {

    InitializeComponent();

    }

    private void Button_Click(object sender, RoutedEventArgs e)

    {

    System.Windows.Forms.OpenFileDialog fd = new OpenFileDialog();

    fd.Filter = @"Excel文件(*.xls; *.xlsx)|*.xls; *.xlsx|All File(*.*)|*.*";

    if(fd.ShowDialog()==System.Windows.Forms.DialogResult.OK)

    {

    filePath.Text = fd.FileName;

    }

    }

    private void BtnAna_Click(object sender, RoutedEventArgs e)

    {

    try

    {

    excel= new Excel.Application();

    wbs = excel.Workbooks;

    wb = wbs.Add(filePath.Text);

    int ncount = wb.Worksheets.Count;

    if (ncount < 1)

    {

    System.Windows.Forms.MessageBox.Show("没有内容");

    return;

    }

    else

    {

    // System.Windows.Forms.MessageBox.Show("ok,继续");

    }

    for(int i=0; i

    {

    ws = (Excel.Worksheet)wb.Sheets.Item[i+1];

    cbSheet.Items.Add(ws.Name);

    }

    cbSheet.Text = ws.Name;

    for(int i=0;i<10;i++)

    {

    cbLeft.Items.Add(i+1);

    cbLeftNum.Items.Add(i + 1);

    cbRight.Items.Add(i + 1);

    cbRightNum.Items.Add(i + 1);

    }

    cbLeft.Text = "2";

    cbLeftNum.Text = "3";

    cbRight.Text = "4";

    cbRightNum.Text = "5";

    // excel.Quit();

    // excel = null;

    }

    catch(Exception ex)

    {

    System.Windows.Forms.MessageBox.Show("解析数据异常,请检查数据结构");

    }

    finally

    {

    excel.Quit();

    excel = null;

    }

    }

    private void BtnRes_Click(object sender, RoutedEventArgs e)

    {

    try

    {

    int nMin = Convert.ToInt32(tbMin.Text);

    int nMax = Convert.ToInt32(tbMax.Text);

    excel = new Excel.Application();

    wbs = excel.Workbooks;

    wb = wbs.Add(filePath.Text);

    int ncount = wb.Worksheets.Count;

    if (ncount < 1)

    {

    System.Windows.Forms.MessageBox.Show("没有内容");

    return;

    }

    else

    {

    // System.Windows.Forms.MessageBox.Show("ok,继续");

    }

    ws = wb.Sheets[cbSheet.Text];

    if(ws.Columns.Count<1)

    {

    System.Windows.Forms.MessageBox.Show("没有内容");

    }

    else

    {

    // System.Windows.Forms.MessageBox.Show("ok,继续");

    }

    string s1="01234";

    int MaxIndex = 222;

    string[,] lrData = new string[MaxIndex, 4];

    int leftArr = Convert.ToInt32(cbLeft.Text);

    int leftNumArr = Convert.ToInt32(cbLeftNum.Text);

    int rightArr = Convert.ToInt32(cbRight.Text);

    int rightNumArr = Convert.ToInt32(cbRightNum.Text);

    int leftNum = 0;

    for(int i=1;i< (MaxIndex+1);i++)

    {

    if(((Excel.Range)ws.Cells[i, leftArr]).Text =="")

    {

    break;

    }

    else

    {

    lrData[leftNum, 0]= ((Excel.Range)ws.Cells[leftNum+1, leftArr]).Text;

    lrData[leftNum, 1] = ((Excel.Range)ws.Cells[leftNum + 1, leftNumArr]).Text;

    leftNum++;

    }

    }

    int rightNum = 0;

    for (int i = 1; i < (MaxIndex + 1); i++)

    {

    if (((Excel.Range)ws.Cells[i, rightArr]).Text == "")

    {

    break;

    }

    else

    {

    lrData[rightNum, 2] = ((Excel.Range)ws.Cells[rightNum + 1, rightArr]).Text;

    lrData[rightNum, 3] = ((Excel.Range)ws.Cells[rightNum + 1, rightNumArr]).Text;

    rightNum++;

    }

    }

    Excel.Worksheet ws1 = (Excel.Worksheet)wb.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);

    ws1.Name = "result";

    int nl = 0;

    int nr = 0;

    for(int x=0;x

    {

    for(int y=0;y

    {

    ws1.Cells[x * rightNum + y + 1, 1] = lrData[x, 0];

    ws1.Cells[x * rightNum + y + 1, 2] = lrData[x, 1];

    ws1.Cells[x * rightNum + y + 1, 3] = lrData[y, 2];

    ws1.Cells[x * rightNum + y + 1, 4] = lrData[y, 3];

    ws1.Cells[x * rightNum + y + 1, 5] = lrData[x, 0] + lrData[y, 2];

    ws1.Cells[x * rightNum + y + 1, 6] = lrData[x, 1] + "+" + lrData[y, 3];

    nl = Convert.ToInt32(lrData[x, 1]);

    nr = Convert.ToInt32(lrData[y, 3]);

    ws1.Cells[x * rightNum + y + 1, 7] = Convert.ToString(nl + nr);

    }

    }

    wb.SaveAs(cbSheet.Text+".xlsx");

    wb.Save();

    wb.Close();

    System.Windows.Forms.MessageBox.Show("结果文件保存在 我的文档 中,命名为:"+ cbSheet.Text + ".xlsx");

    }

    catch(Exception ex)

    {

    System.Windows.Forms.MessageBox.Show("解析数据异常,请检查数据结构");

    }

    finally

    {

    excel.Quit();

    excel = null;

    }

    }

    }

    }

    写完之后,我觉得Excel公式可能很方便的就能实现这个程序的功能,我虽为程序员,但是真的对那些公式有点陌生,虽说学起来可能很快,但就是没学,竟然有种“隔行如隔山”的感觉。

    不敢说自己没有时间,前段时间晚上回家,看完了《铁齿铜牙纪晓岚》四部曲,最近也看完了《宰相刘罗锅》,惭愧。

    中间插:每日可行,长按copy本行 道4亚汇宁斯忆34挨非 打开阿里家的支F宝领钱。

    我觉得应该没有人能看到这。如果有桌面无聊的人请留言哦!

    C#现在真是尴尬,java在手机端(Android)和web端(服务器)上很有市场,C#想进入桌面应用,但是有老大哥MFC(C++),现在QT又风生水起,win7和WinXP份额还很大, 你认为,C-Sharp的前景怎么样呢?

    真希望微软的真能跨平台啊,可惜微软短期内不会帮助竞争对手了。

    助人者会助己吗?

    要么C#死、Windows活,要么Windows死、C#活?

    肯定不是。

    平台不跨平台,C#顶多奄奄一息而已。

    跨平台,Windows可能活的更好。

    ————分割线————

    耿然原创,勤了周更,懒了月更。

    欢迎评论、吐槽、爆料、投诉、建议。

    评论比文章更精彩。

    ————分割线————

  • ?

    只用这一招办公技巧,实现Excel办公自动化不是梦!

    金山

    展开

    Excel是一款极强大的数据处理软件,无论是学习工作,都会用得上它。

    对于上班族来说,Excel更加是一款必备的软件。从一行数据到几万条数据,都可以用Excel来处理,存放、汇总、分析等。

    但Excel本身只是一款工具,不是数据库,办公场景下产生的数据一旦太多,用Excel来存放,问题就会特别多。

    打开一个这样的数据总表就变得很慢,查询的时候也很慢,不知道的人还以为是电脑的问题呢!

    像一个有五六百职工的工厂,其人事文员需要处理的数据就特别多了,员工的个人资料、考勤记录、入职离职办理等。

    比如说入职,登记了员工的个人资料进Excel表格中,手动输入完成还要人工检查有没录入错误。

    其后可能还得汇总到其他表单去,像员工通讯录,就只需要摘取员工的姓名、联系方式和部门、具体岗位等。每次都需要复制粘贴相同的数据,员工离职也得及时删掉其联系方式。

    这样的工作仅仅使用Excel表格来处理,让人事工作总是显得很繁琐,而且重复性的操作极多。其他行业的工作岗位也常常需要进行一些重复度极高的工作,如财务出纳、仓库物流管理等。

    我们该如何去提升这类工作的效率呢?当然是想办法实现办公自动化!

    直接从Excel入手,实现办公自动化不是件轻松的事,需要学习使用VBA编程、学习宏操作。VBA编程里的一行行代码总是让人感觉到很棘手,但就没有其他办法可以实现办公自动化了吗?

    答案是有其他办法!无需编程,一样可以轻松实现办公自动化,我们以云表为例,说说云表是怎样实现Excel式的办公自动化。

    为什么说云表无需编程,却又能实现Excel式 的办公自动化呢?其原理在于云表是一个类Excel的开发平台,既兼容了Excel所有操作,也能用中文描述业务规则,使表单数据互通,员工入职表的信息能自动更新到员工通讯录去,实现自动化。

    除此以外,我们还可以灵活地设置角色权限,A只能查询业务总表,而B却能修改总表。这在仓库管理、财务出纳中可以有更多的应用,谁有权限就只有谁能操作,一一归责到个人身上,出现问题可以快速找到负责人。

    云表能做的功能还有更多,像给货物按照某一个格式自动编号,自动更新操作记录、库存最低预警、工资考勤自动计算等,甚至可以做出完整的ERP管理软件、办公OA、仓库管理软件、财务出纳软件......只要有管理经验,就能用云表做出成熟好用的管理软件。

    无需编程,就能用云表实现办公自动化,做出一个最合适的管理软件。虽然云表功能如此强大,但它仍然提供了免费版,还有详细教程和技术客服助你快速入门!!!

  • ?

    EXCEL用户别把自己搞得那么累,1个工具让你实现自动化工作!

    苻凡灵

    展开

    很多基层员工,使用EXCEL会很多,尤其是一些经常需要制作表格、录入表格和汇总表格的岗位,表格无穷多,工作量很大,有时不小心出错了,还得重新改,弄不好还得挨骂和受处罚,有没有办法让咱们这些EXCEL表哥表妹工作轻松一些、效率更高一些,身心愉快一些呢?

    今天给大家分享一个工具和用法,让咱们企业的EXCEL报表处理工作变得更轻松简单一些。

    让EXCEL表单数据处理工作更高效的其中一个方法就是减少重复工作提高录入效率和减少数据出错。仅仅靠EXCEL本身来解决这个问题不是太好办。那今天这个工具就能轻松做到。

    云表,也许大家接触还不多,但这个工具长像和EXCEL差不多,但是功能可比EXCEL强很多,我们今天先分享一下云表的快捷录入的做法。

    自动录入

    举个例子来说:销售部或生产部的订单员,每天都会录入很多订单,而客户是相对固定的,就是那么些家,但是每次录订单的时候这些客户信息都要重复输入,很麻烦,如果用云表来做的话,可以实现只要输入客户的名称,其他相关信息如,电话,收货地址、账号、联系人等各种基本信息都自动录入了,就样就能节约很多时间。

    自动生成编号

    而且订单日期,可以直接选择,点点鼠标即可,不能手动录入,订单编号也可以自定义编号规则,自动生成编号,系统自动生成,不会重复也不会出错。

    自动校验数据

    你可以自定义单元格数据的类型和格式,如果填写错误,系统会直接报错提示。

    自动汇总生成分析报表

    所有表单填写完成后,设计个分析报表模板会自动汇总各种分析图片。

    自动计算

    这个EXCEL也可以,但是云表可以做到正算和反算,不会出现像EXCEL那种死循环。比如,通过单价和数量算总金额,也可以通过总金额反算出单价或者数量。

    导入导出EXCEL文档

    如果需要把EXCEL文档导入到云表,或者把云表的表单导出EXCEL表单,都可以分分钟完成。

    以上操作,很简单,最基层工作人员,不需要技术能力,照着云表的教程设置 一下就好了。个人使用或者小公司,大企业的某个部门使用都是可以不花钱的。给大家一个注册地址,也是云表网站,注册好后,上面也有教程。

    当然了,云表,是可以按这个方法设计各种管理软件,不用编程。一般像进销存,简易仓库管理,生产管理,BOM等小型的管理软件,都是可以照 着教程做出来的,当然如果复杂的软件像ERP,或者MES,WMS等软件,是需要对企业业务多些了解,对云表技术了解更多一些,也可以不用编程来实现。

    如果觉得云表实用,那就收藏并转发给你的同事吧。

    关注我,获取更多实用工具和教程。

    云表还有官方学习群,有专业老师实时在线指导学习哦,要加入,请在下方评论留言

  • ?

    别人都用Excel技巧搭建办公管理软件,而你还在用它做表格!

    荣慕灵

    展开

    office办公应用三大件:Word、Excel、PowerPoint,几乎每台电脑都会装这三个办公软件,而Excel在办公场景中更是必不可少。

    办公族都要用Excel来处理数据,例如记录各种数据,客户订单、产品资料、人事档案等。

    实际上很多单位要求熟悉Excel的程度,也就仅止于会用Excel录数据、做表单罢了。

    最熟悉的快捷键就是Ctrl+c/Ctrl+v,最常用的Excel操作就是合并单元格、求和,更多的工作就是用公司原有的表单模板干活。

    比如一个跟单文员,每天的工作就是录入订单数据到总表,用文件夹里的制造工单模板、送货单模板、送货标签模板填入总表的数据,复制粘贴,再修改一下边框等,就是一天。

    数据多的时候,那就别想准时下班了。

    同样都是会用Excel的人,却有人用Excel技巧做出了办公自动化的管理软件,轻松完成每天的工作。

    为什么能想到做这么一个软件呢?因为都是重复性的工作啊,制造工单、送货单、送货标签的数据都是取自于总表,让软件自动传送呗。

    为什么用Excel技巧就搭建办公自动化软件?不需要学编程?是的,无需编程、用Excel技巧也能做办公软件。

    别人正是利用了这样一款类似于Excel的表格软件,完成了办公管理软件的搭建。

    它就是云表,类似于Excel的操作界面,通过中文的业务逻辑就能实现自动化办公。

    像用Excel一样设定表单的填写规范,还可以设置自动生成一定格式的编号,如按日期自动编号。

    用最基础的Excel技巧,加以办公管理经验,用中文描述业务逻辑,无需编程就可以用云表做出一套好用的办公管理软件了。

    还在等什么呢?还想继续加班吗,别人都用Excel技巧搭建办公管理软件,而你还在用它做表格!

    云表能做的功能还有更多,像自动更新操作记录、库存最低预警、工资考勤自动计算等,甚至可以做出完整的ERP管理软件、仓库管理软件、财务出纳软件.....

    虽然云表功能如此强大,但它仍然提供了免费版,还有详细教程和技术客服助你快速入门!!!

    转载自百家号作者:优品资源

  • ?

    EXCEL2007 vba编程入门(实例对话框)

    过潦

    展开

    1、新建EXCEL2007空白表格。xlsx格式的,将VBA工具栏调出。如图1.1

    2、点击“开发工具”然后单击插入,在下拉的菜单的表单控件里面选择“按钮”,如图2.1

    3、画个方框,会弹出一个对话框“指定宏”,单击"新建"按钮,这样就会进入后台的程序书写界面,进入以后,程序的头和尾已经帮你写好了,如图3.1,你只需要在中间写入一句程序“ MsgBox("hello world") ”。

    4、为了保证宏正常运行,要在EXCEL的设置中进行启用宏操作。在“开发工具-宏安全性-宏设置:启用所有宏和勾选信任对VBA工程对象模型的访问”。如图4.1

    5、最后点击另存为“启用宏的工作簿”的xlsm文件,然后退出程序界面。

  • ?

    小白也能看懂的Excel VBA入门教程(一)

    利布斯特

    展开

    什么是VBA

    Visual Basic for Applications(VBA)是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。简单来说VBA是建立在Office中的一种应用程序开发工具,其实知道这也就够了。

    第一个VBA程序

    首先要把开发工具调出来,Excel默认情况下是不显示开发工具的

    打开vb编辑器,新建模块,并写入代码

    Sub test()Range("A1") = "Hello World" '在A1单元格中填写Hello WorldRange("A2") = "我的第一个VBA程序"End Sub

    在Excel VBA中,Range对象可能是最常用的对象,Range对象可以是某一单元格、某一单元格区域、某一行、某一列、或者是多个连续或非连续的区域组成的区域。代码中 Range("A1") 就代表A1单元格。而“=”是一个赋值运算符,将右边的值传给左边的变量。

    大家学会了吗,其实VBA还是比较简单的。小编准备写一个VBA入门的教程,现在有两种思路,一种是先讲解VB的基本知识,然后在从例子中不断加深理解,这样前期可能相对比较枯燥;另一种是每篇介绍一个例子,讲解一下如何用VBA来解决,从实战中学习,相对来说比较快一点。大家觉得那种更好一点呢,或者有更好的方法,欢迎在下方评论,小编一定会及时回复。。

  • ?

    神奇的Excel平台!自动生成APP和软件,让普通人秒变程序员!

    天之雪

    展开

    每个EXCEL、WPS达人和管理者,虽然不一定会编程,却都有一个编程梦,总希望把工作和管理进行批量化、智能化、协同处理,以提高效率,然而EXCEL功能是有限的,无论对EXCEL玩的多精通,软件的功能也很难实现。今天就给普通的你,分享一个类EXCEL平台的工具,可以像用EXCEL那样去搭建你想要的软件和APP。你也可以变成IT达人!

    你想不想用excel做一个,功能强大又好用的管理软件?

    用EXCEL的方式,搭建真正的软件系统,可行吗?

    我们说的真正的软件,必须得具备智能录入、数据校验、工作流程、多用户协同、数据共享、用户权限控制,三方软件对接、手机APP应用、拍照上传、统计查询、附件上传、组织架构管理……。等等,传统代码编程开发软件具有的功能,它都得有。

    那用EXCEL的方式可以做到么?肯定可以!但绝不是EXCEL和WPS,而是一款类EXCEL平台,云表!

    可以兼容EXCEL用法,比如自定义表单样式,拖拉拽的操作方式、导入导出EXCEL……等等,也就是说你只要会用EXCEL或WPS就能用云表。

    看一下上图:能不能发现,云表设计器界面与EXCEL界面有哪些差别?而且云表设计界面和EXCEL长得还挺像的,不过他们可没有血缘,顶多和WPS有点亲戚关系,云表开发团队源自金山系创业者,就是WPS团队出来的。而且,云表完全独立,不用安装WPS或EXCEL就能使用。

    会画表格就能快速搭建管理软件,请看有多方便!

    只需要用EXCEL的操作方式,把软件需要用的表单或界面样式画出来(只要你愿意,就能画得很漂亮),比如采购单、销售单、库存表、报表等基本表格样式,然后用中文公式(纯中文,会认字就能看懂)把表间关联配置好,设置好组织架构和用户并分配不同权限,还有设置好相应的业务流程和审批流程,再加上导航(也可以不要),那这个软件就完成,如果需要和已有软件比如财务软件等对接,也是可以的。

    一键自动生成APP,手机上随时随地使用!

    上面把软件功能搭建完成后,只需要在手机端安装云表APP并简单配置一下,另外在云表设计界面勾选适用手机APP,那这个功就可以在手机上使用了。是不是超级简单,整个过程,完全不用编程。

    云表做的手机APP

    说的可能比较笼统,可以到官网安装个软件做一遍就明白了。

  • ?

    关于Excel VBA编程的小技巧

    袁梦柏

    展开

    1、 根据条件删除行

    Sub deleteRows(strTable, condition1, condition2)

    Dim i, j, iMax, jMax As Long

    Dim iicondition1, iicondition2 As Integer

    With Worksheets(strTable)

    iMax = .UsedRange.Rows.Count

    jMax = .UsedRange.Columns.Count

    i = 2

    Do While i < iMax + 1

    iicondition1= .Cells(i, 1)

    iicondition2 = .Cells(i, 2)

    If (iicondition1= condition1And iicondition2 = condition2) Then

    .Rows(i & ":" & i).Delete shift:=xlUp

    iMax = iMax - 1

    Else

    i = i + 1

    End If

    Loop

    End With

    End Sub

    2、 删除所以的使用range

    Worksheets("sheetName").UsedRange.Delete shift:=xlUp

    3、打开某指定路径的文件夹对话框

    Function GetFileName(ByVal DialogType As MsoFileDialogType, ByVal defaultPath As String) As String

    With Application.FileDialog(DialogType)

    .Title = "XXXX:"

    .AllowMultiSelect = False

    .Filters.Clear

    .Filters.Add "Excel Files", "*.xlsm"

    .Filters.Add "All Files", "*.*"

    .InitialFileName = defaultPath

    If .Show = True Then

    GetFolderName = .SelectedItems(1)

    End If

    End With

    End Function

    4、截取字符段

    从右边开始,查找某字符,然后截取其后面的字符串。

    xlsPath2 = Right(xlsPath, InStr(StrReverse(xlsPath), "\") - 1)

    5、Sharepoint数据的刷新

    Worksheets("Sharepoint对应的sheet").Range("A1").ListObject.QueryTable.Refresh BackgroundQuery:=False

    6、当前使用的range的取得

    .UsedRange ‘对应的range

    .UsedRange.Rows.Count ‘对应的行号

    .UsedRange.Columns.Count 对应的列号

    7、在Excel内部打开另外一个Excel (不显示,隐藏)并读取其数据

    Set xlsApp = New Excel.Application

    xlsApp.Visible = False

    xlsPath = ThisWorkbook.Path

    Set xlsWB = xlsApp.Workbooks.Open(xlsPath, Null, ReadOnly)

    ‘读取/写入对应的sheet

    X = xlsWB.worksheets(“xxxx”).cells(i,j)

    xlsWB.worksheets(“xxxx”)..Cells(i, j).Formula = "=E” & i

    8、计算处理

    '如果你的表中有大量的计算单元格,那就需要关闭自动计算,否则慢的要死

    ‘在VBA开始,设置为手动

    'Application.Calculation = xlCalculationManual

    'Application.ScreenUpdating = False

    ‘在VBA开始,设置为自动

    'Application.Calculation = xlCalculationAutomatic

    'Application.ScreenUpdating = False

    注意,还有一种方法是再打开本excel的时候,就设置为手动,对于需要计算的sheet,单独在其数据填充完毕后,执行计算操作。

    例如: Worksheets("XXXXX”).Calculate ‘这是效率最高一种方法。当然,你也可以对某些range,单独进行range计算。

    9、Range到range的只读拷贝、黏贴

    Worksheets("srcSheet").Range(.Cells(1, 1), .Cells(x,y)).Copy

    Worksheets("dstSheet").Cells(1, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

    10、Cell内容的替换操作

    Worksheets("CostTable").Cells.Replace What:="Original Content", Replacement:="replease Content", LookAt:=xlPart, _

    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

    11、自动填充

    Worksheets("xxxx")..Range("D8:F8").AutoFill Destination:=.Range(.Cells(8, 4), .Cells(rMax, 8)), Type:=xlFillDefault

    12、获取pivot的使用区域、

    Set pvt = Worksheets("xxxx").PivotTables("PivotTable_xxxx")

    Set rngTable = pvt.TableRange1

    13、刷新pivot

    Worksheets("xxxx").PivotTables("PivotTable_xxxx").PivotCache.Refresh

  • ?

    最强办公技巧|不用Excel函数、不用VBA编程,照样实现办公自动化

    单天晴

    展开

    对于很多职场人士而言,Excel或者WPS表格就是他们每天最常用的办公软件了。

    比如,HR用Excel来制作员工入职填写表单,设计好填写范例,需要填写姓名、性别、岗位、银行卡号、身份证号码等等,就如下图。

    对于有经验、熟悉Excel操作的人事专员来说,制作这样的一张表单当然不是什么难题。可往往难题又出现在这样一张用Excel制作的表单中。

    比如说员工填少或填多了身份证号码、银行卡号等,就会给后续工作带来麻烦,也就只能再一次找员工去核对了。

    又或者员工在填写的时候不小心误操作,变动了格式,在汇总的时候麻烦多多。

    可是如果这个表单可以自动核查甚至锁定格式、设置修改权限的话,自动提醒填多或填少、限制改格式,那就能大大减少这种情况带来的麻烦了。

    机灵的人事专员可能马上行动,去查如何实现这种Excel自动核查、锁定填写格式、设定权限等功能了。

    可一查,教程说的方法不是需要填很多的函数公式,就是要VBA编程。函数公式还好解决,但是VBA编程那一行行的代码就实际无法看懂了。

    那怎么办?当然不是凉拌啦,我们可以使用无需编程的开发平台去制作一个人事管理软件,给这个软件设置权限、限定填写格式、自动核查,员工填写完成后不用再通过邮件发送给人事专员,而是在软件里自动接收到填写好的表单。

    云表是一个无需编程就能开发管理软件的免费平台,以下就用云表简单说明怎样开发一个人事管理软件的。

    云表的开发界面类似于Excel,操作起来像Excel一样简单,可以随意合并表格涂色等,能把表单设计得很漂亮。

    可以设计一个员工入职填写表单,通过设置修改权限后,便只有人事专员能改动表单的格式。同时给每个填写框,比如填写银行卡号的框,设置成数字填写并固定多少个数字,就可以自动检查错误了。

    除了这些小功能以外,还可以运用业务公式,也就是用工作上的业务逻辑去描述。比如汇总新入职的员工资料,只需要员工的姓名、岗位、联系方式。我们不再需要复制粘贴了,用云表的业务公式设定员工个人的资料表中这几项内容,点一个按钮就能自动填写到汇总表中去。这在常年招工的工厂人事管理中特别有用哦!

    其实云表可以实现的功能还有很多,可以做出完整的ERP管理软件、仓库管理软件、电商进销存软件等。

  • ?

    人人都可以学点编程(打开你的Excel就可以了)

    刘嘉懿

    展开

    以前流行的说法是:21世纪必备的三大技能,英语,电脑,驾驶。在本世纪开始的前20年内,已经是非常明显的体现了,慢慢会成为职场的标配。未来的社会,肯定是会越来越智能化的。以后写简单的代码,可能会成为工作和生活的标配。买一个机器人回来,陪自己好好聊聊天,但这个家伙脾气好像有点大哟,能不能自己写点简单的代码,把这个家伙的脾气改小一点呢?必须能啊。

    学编程难吗?等同于写作难吗?如果你的目标不是成为职业作家,写作就是很轻松的事,想想我们从小学就开始写作了。同样地,学英语难吗?健身难吗?练字难吗?一旦开始,每天花点时间,什么都不难。如果你是上班族,学点程序对你的工作效率是会有大大提升的,加薪水啊,指日可待。给漂亮妹妹展示一把,哇,你好厉害哟,一个崇拜的眼神。

    好啦,

    美女都会编程了

    今天就以一个非常简单的小程序开始,体验一下吧。我的目标是,人人都可以会。试试这个简单的程序,2分钟,轻松搞定。

    第1步:打开excel

    第2步:在键盘上按下:ALT+F11,进入到以下界面。

    第3步:双击“ThisWorkBook”,显示空白的页面,如下所示。

    把以下代码复制,粘贴到空白页。

    Sub test()

    For i=1 to 100

    a=a+1

    Next

    MsgBox a

    End Sub

    第4步:点击运行程序

    第5步:看到运行的结果。

    5050就是运行结果,这个小程序的作用是从1~100相加,结果就是5050.

    点击“确认”,又会回到程序窗口。你可以把100更改为其它数,结果就是从1加到多少。试试吧

    你想不想知道,从2到100的偶数相加,怎么计算呢?

    【完】

怎样用excel编程

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP