中企动力 > 商学院 > excel程序编写
  • ?

    用excel编写一个公式就100块?

    汤米

    展开

    今日,一个顾客找上门来,用excel编写一个公式,宽和高列 从编号列的文字里面提取数据,只是四位数字和六位数字需要分别编写。想要一个自动编写的。

    用excel编写一个公式

    他说:难度没有那么大的,第一个我已经把公式弄好了。你看能弄的话,开个价吧。我说你预算多少钱?答曰:一百块。

    编写一个公式用excel

    一百块?还不够请同事吃顿饭,还是不接了?小伙伴,你怎么看呢?你会帮他吗?

  • ?

    这些编程新手入过的坑,我劝你不要走

    pp

    展开

    “我最早想学习编程,是因为我想证明我聪明。并且,我也想做一份属于聪明人的工作。我还喜欢思考数学及理论。但是,这些想法都不足以延续我的编程学习热情,直到…………”

    文/ Cecily Carver

    在学习编程之前,想清楚自己到底想写什么程序

    学习编程基本就是在学习建造东西。如果你知道你到底想造什么,你的编程学习之路将会豁然开朗。如果你的目标只是“学习如何编程”,却不知道自己到底想写出什么样的程序,也不知道这些程序将如何让你的生活变得更美好,你很有可能会感到编程学习令你沮丧,受挫。

    说起来还有点丢脸,我最早想学习编程,是因为我想证明我聪明。并且,我也想做一份属于聪明人的工作。我还喜欢思考数学及理论。因此,编程怎么看都和我很搭。但是这些想法都不足以延续我的编程学习热情。直到有一天,当我终于发现如何将科技(编程)与我的真爱---音乐和文学---联系在一起时,我才真正爱上编程。

    那么,你到底想用编程来干嘛呢?网站?游戏?iPhone 应用?一个让你暴富的初创公司?交互式艺术作品?你是想让你的老板对你刮目相看,还是想写个程序让电脑帮你完成一个枯燥的任务,以让你能花更多的时间看水獭的萌照?也可能你只是想在职场中更具竞争力,为你的简历加一个潮词(编程),或者满足你学校的毕业要求。这些都是有价值的目标。你需要搞清楚自己的目标,然后有针对性地学习。

    编程一点也不神秘,一点也不难

    编程和其他技能没有本质差别。就像语言学习里有语法和单词;就像数学里有不同的步骤和不同的题目;就像所有的技艺和手艺,编程里也有前人总结的针对不同任务的技巧,工具,和好的习惯。这些东西,你都可以自由使用,修改,或者弃用。

    有个人曾这样断定,程序大牛和编程界的芸芸众生之间有一个明显的区别---后者往往缺乏足够的智慧在编程界获得真正的成功。在这个人看来,这种智慧包含对指针 (Pointers) 和递归 (Recursion) 的理解。

    我在学校曾学过指针和递归。在学生时代,能理解指针和递归的感觉真心超级爽。这种快感激发我踏上了计算机学习之路。但在课堂练习之外,我极少有需要去碰这两个概念。并且,当我在教别人如何学习编程时,我也一次又一次地发现,人们不用这两个概念也能写出很有趣,很赞的程序。

    所以,不要害怕,也不要去想自己是否足够聪明。想这些都没意义。是的,编程任务越复杂,越难懂,你就需要越高超的技巧才能完成。但哪个领域不是如此呢?除非你这辈子就靠编程讨生活了,否则你不太可能需要去理解编程中的递归。

    没人能一次搞定

    当你第一次学习编程时,你会很快撞上这么个问题。你觉得你已配置好一切了,你查了又查,但你的代码就是有!问!题!你对如何排错毫无头绪。错误信息(如果运气好你有的话)很有可能对你说的是---“我了个大艹”。这个时候,你很有可能想要放弃。你觉得你永远不可能搞定,觉得自己就不是编程的料。嘿!当我第一次尝试编写 C++程序,运行,却只得到 “segmentation fault” 这样的错误代码时,我也有过一样的沮丧感。

    但是这种经历对任何一个水准的程序员而言,都再正常不过了。有过这种经历,并不代表你的智商,技术悟性,或你和编程的适合度有任何问题。不管你是编程新兵,还是程序大牛,你都会遇到这样的经历。而新兵和大牛的区别就在于如何对待这样的经历。

    新兵和大牛的一大区别就是信念。什么信念呢?就是深信出错的原因是符合逻辑的,并可以找到的,深信问题可以被解决,深信总有办法实现自己的目标。从0到1之路也许并不明显,但只要你有耐心,你通常都可以找到。

    总有人说你做的不对

    大括号{}应该怎么放放?该不该不用 tab 来缩进?该不该对代码添加注释?

    对于这些问题,大家的做法各有不同。没有谁有标准答案。很多程序员热衷推销自己的偏好的那种处理方式,但这不意味着答案只有一个。事实上,与那些说我做的不对的人面对面,然后再努力去搞懂他们说的到底是不是对的,这种来来回回,是我职业生涯的压力源之一。

    如果你与一个团队的其他成员一起写码,总会有人不认同你的某些行为。有时他们是对的,但事实上你到底是!对!是!错!永远值得你亲自去推敲。有时他们纯粹就是无理取闹,你别理他们就好了。

    总有人会说你不是一个真正的程序员

    看看这些说法吧!“HTML 不是真正的编程语言。” “如果你不用vi,你就不是真正的程序员。” “真正的程序员得懂 C 语言。” “有些人就是不适合编程。” “有些人就是学不会。” “你根本就不是真正的程序员,我才是。”

    要我说,编程对于不同的人有不同的含义。同时,编程的含义随着时间的流逝也在变化。有趣的是,那些能让初学者,甚至是编程老鸟,更快上手,更省事的工具,包,框架等往往会被贴上 “真正的程序员不该使用” 这样的标签。

    这种贴标签行为背后是一种恐惧:如果任何人都能称自己为程序员,那这个头衔就将毫无意义。不过,我认为这种闭关自守的行为是有害的。

    去用那些让写程序变得容易的工具吧。如果那意味着你用 Stencyl 或者 GameMaker 来写游戏,而不是从零开始写一个新的,没事,只管去做。如果你第一次尝试编程是从 HTML 或者 Excel 宏开始,没事,只管去做。哪个(编程方式)你能坚持下去,你就用哪个。

    随着你技术不断提升,你就会发现那些便利工具对你的限制大于对你的帮助。那时,你就会去寻找更强大的编程工具。但大多数时候,很少有人会看你的代码,或者问你用什么编程工具。你的程序到底好不好用才是真正重要的。

    坚持比方法更重要

    关于 “正确编程学习法” 和 “最佳编程学习法” 的文章有很多。的确,学习编程的方法有很多。你可以看书来学,你可以做练习来学,你可以给别人的程序捉虫来学。当然了,也有很多种编程语言你可以挑选来作为你的第一门语言。

    自学型的编程课程或者讲座系列常常有个问题:一开始你总会学得很爽,但难度会陡然上升。print 命令总是很简单,但要真正搞定一个实用程序的编写,往往让人抓狂。你很有可能觉得跟着教程走却并没搞懂,然后你就开始抱怨教程有问题。

    当你撞上这个 “编程玻璃顶” 时,那些教程和线上资源对你的意义已经不大了,因为他们默认你已经是一个编程好手了。更让整个编程学习进阶之路变难的因素是,你根本不知道自己缺什么 (you don’t know what you don’t know) 。甚至,搞清楚自己接下来需要什么都成了难题。

    不管上什么编程课,你都会有这么一段 “撞墙期” 。唯一的解决办法就是坚持到底。这意味着你要不断尝试新事物,学习新知识,不断地,一步步地,去解决问题,去编出你要的程序。如果你这时认真回看自己的编程初心,你就更有可能获得成功。

    坚持到底,就会胜利。这就是我之前提到的信念的价值所在。如果你真的坚持到底,你就真的会胜利。

    -完-

  • ?

    在编程语言排行中找不见它,VBA编程语言

    翁匕

    展开

    Visual Basic for Applications(VBA)是一种Visual Basic的一种宏语言,主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。也可说是一种应用程序视觉化的Basic Script。 1994年发行的Excel 5.0版本中,即具备了VBA的宏功能。

    VBA是Excel,Word,PowerPoint等办公应用程序理解的语言。

    VBA是一种功能强大的内置编程语言,允许您在Excel电子表格中编写自己的函数或命令。

    VBA是经典Visual Basic的最后一个前哨,它非常适合快速轻松地完成工作。不擅长的是构建大而复杂的应用程序。

    具有控制作用的函数

    IIf(条件式,表达式1,表达式2)Switch(条件式1,表达式1,[条件式2,表达式2[,...,条件式n,表达式n]])Choose(索引式,选项1[,选项2,...[,选项n]]) '这是基于1的索引

    VBA和VB的区别对比

    本文讲的不是开发语言VB,而是excel的编程语言。区别包括如下几个方面:

    1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化

    2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.

    3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的”父”应用程序,例如EXCEL.

    VBA的优点

    如果不是专业搞开发的,学习VBA以后。绝大多数企业和你所在的部门都会用到excel,都需要处理数据。你绝对是你们公司或者部门的宝贝。VBA的优势如下:

    开发环境搭建简单,只需要打开装机自带的Office,然后按下Alt+F11就自动进入编程和执行环境;上手简单,学习曲线很平缓,甚至可以更简单的通过录制宏来解决写程序的问题,只需要在简单的代码基础上修修补补就可以执行。与办公环境完美兼容,在Excel/Word/Powerpoint/Outlook/Access之间随便穿梭,比胶水语言还要简单易用分享性和移植性很强,几乎所有测试通过的程序放到别的机器上也可轻易执行。

    本文参考

    9ima

    i-programmer

    wikipedia

    zhihu

  • ?

    Excel办公软件只要掌握技巧!操作起来原来如此简单!

    逍遥猫

    展开

    技巧一:同时对多个单元格执行相同运算

    在使用Excel表格的制作过程的时候,常常需要添加公式进行一些数据的运算,在运算的过程中相同公式添加到多个单元格中怎么才能做到了?

    .

    .

    .

    操作步骤如下

    要对多个单元格执行相同公式入将单元格执行全部加"2"的操作,首先在空白单元格中输入你要执行运算操作数"2",单击开始选项卡中,剪贴板下复制命令。

    .选择你要进行运算的单元格,开始选项卡中"剪贴板下的粘贴然后选中选择性粘贴"命令。

    .在选择性命令中点击"运算"在区域中勾选上"加",点击确定。

    .

    .

    .

    .

    .

    技巧二:在Excel函数中快速引用单元格

    .

    问题描述

    .

    在Excel文档编辑的时候,函数的运用是必不可少的,今天笔者为大家介绍一下,在Excel函数中快速引用单元格,那怎么操作了?

    操作步骤

    .笔者以SUM函数为例子,在公式编辑栏中输入"=SUM()",然后将光标放在在小括号内,这时候按住【Ctrl】键,在工作表中选择要参与运算的单元格,输入完成之后点击【Enter】键。

    .操作图片如下

    .

    步骤阅读

    技巧三:自定义单元格的移动方向

    .

    操作步骤

    .在文件下方,进入"Excel选项"按钮,打开"Excel选项"选择高级选项卡,在"按【Enter】键后移动所选内容"选项卡的"方向",可以更具自己的需要进行选择,选择好了直接点击确定。

    .

    .

  • ?

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

    杂酱面

    展开

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

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

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

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

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

  • ?

    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 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平台!自动生成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就可以了)

    Villa

    展开

    以前流行的说法是: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的偶数相加,怎么计算呢?

    【完】

  • ?

    1个案例教你学会Excel中的VBA

    易巧

    展开

    可能很多朋友不知道Excel中VBA的用途。那什么是VBA呢?

    一句话概括:在Excel中想实现什么功能,就可以用VBA语言编写一段程序去完成。

    今天通过例子带大家了解Excel中的VBA!

    软件说明:Excel 2010版本

    场景再现:表格中点击按钮,向单元格E1中输入数字 “233”,并且能够实现清除!

    第一步、打开编写VBA代码的窗口

    在Excel表格中编写VBA的窗口叫VBE编辑器,有两种打开的方法。

    在工作表标签上右键 - 查看代码按Alt+F11

    第二步、创建写VBA代码的地方

    有朋友肯定会问:“我没学会编程怎么办?”、“我都没见过代码能行吗?”;别急!我的回复是肯定的!

    在哪编写代码呢?有好几种方式,今天先学最常用的:“插入” - “模块”。新建一个模块用来存放编写的代码;记住:修改模板的名称:我的VBA模板【如下图虚线标注】

    第三步、开始写代码

    新建模板后,在右侧的空白位置就是编写代码的地方。可以执行的VBA代码,结构是这样的:

    Sub 程序名(参数)可以执行任务的代码End Sub

    因为例子中我要进行输入与清除的操作,输入Sub 程序名()然后回车,End Sub就会自动输入;如下图:

    在开始和结束语句之间输入代码,执行在单元格A1中输入数字"233"

    Range("E1") = 123

    备注:在VBA中,Range("单元格地址")来表示单元格。在单元格中输入值,直接用=值 即可(字符串两边要加双引用),如果清空则 =""。

    再编写一段清空代码:

    第四步、测试运行代码

    在编写代码时经常要测试是否正确。测试方式是把光标放在代码行的任意位置【下图中“测试按钮”的位置】,点击运行小按钮进行测试;同样清空代码也一样。

    第五步、点击按钮执行VBA代码

    在Excel中插入的图形、图片、按钮控件都可以执行VBA代码。让它们执行很简单,点击“插入” - “矩形” - “指定宏”

    只需要右键菜单中点击指定宏 - 选取编写的宏名称,选择“输入”,添加输入按钮。

    同样添加清除按钮:

    当然自己可以调整字体的颜色、字体,让其变得更加美观!

    此时,通过VBA设置的输入“233”,并可以点击清除!

    第六步、保存VBA代码

    此时的VBA代码应该是既有输入代码又有清空代码;最后需要保存为“启用宏的工作簿"类型【注意下图中虚线框标注】,VBA代码才能保存下来。

    好了!今天的分享就到这里,是不是感觉VBA也没有想象的那么难?

    赶快转发、关注吧,更多技巧尽在头条号中!

excel程序编写

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

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

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP