excel VBA 编程
Dim cuttent_columns As Integer
Dim care_repeat As Integer Private Sub Workbook_Open()
Dim i As Integer
Dim j As Integer
'确定cuttent_columns的值
For i = 1 To 100
If Cells(1, i) = "" Then
For j = i To 100
If Cells(1, j) = "" Then Else
cuttent_columns = j - 1
'MsgBox "init cuttent_columns"
'MsgBox cuttent_columns
Exit Sub
End If
Next
End If
Next End Sub Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next '跳过异常
Application.ScreenUpdating = False '关闭屏幕更新 If care_repeat = 1 Then
care_repeat = 0
'MsgBox "防止正反馈"
Exit Sub
End If If Target.Row > 51 Then Exit Sub 'MsgBox "cuttent_columns"
'MsgBox cuttent_columns
'MsgBox "Target.Row"
'MsgBox Target.Row
'MsgBox "Target.Target.Column"
'MsgBox Target.Column Dim null_flag As Integer
Dim i As Integer
null_flag = 0 If Cells(Target.Row, 2) = 0 Or Cells(Target.Row, 2) = "" Then Else
For i = 2 To cuttent_columns
If Cells(Target.Row, i) = "" Then
care_repeat = 1
Cells(Target.Row, i) = Cells(Target.Row, 2)
care_repeat = 1
Cells(Target.Row, 2) = 0
null_flag = 1
Exit For
End If
Next If null_flag = 0 Then
cuttent_columns = cuttent_columns + 1
care_repeat = 1
ActiveSheet.Columns(cuttent_columns).Insert
care_repeat = 1
Cells(Target.Row, cuttent_columns) = Cells(Target.Row, 2)
care_repeat = 1
Cells(Target.Row, 2) = 0
End If
End If '计算总和
Dim littel_total As Integer
Dim littel_total_num As Integer
Dim big_total_num As Integer
littel_total = cuttent_columns + 1
littel_total_num = 0
big_total_num = 0 '计算小总和
For i = 3 To cuttent_columns
littel_total_num = littel_total_num + Cells(Target.Row, i)
Next
care_repeat = 1
Cells(Target.Row, littel_total) = littel_total_num '判断
If Cells(Target.Row, littel_total) > Cells(53, 2) Then
care_repeat = 1
Cells(Target.Row, littel_total + 1) = "金额超过阈值"
Else
care_repeat = 1
Cells(Target.Row, littel_total + 1) = ""
End If '计算大总和
For i = 2 To 51
big_total_num = big_total_num + Cells(i, littel_total)
Next
care_repeat = 1
Cells(52, littel_total) = big_total_num Application.ScreenUpdating = True '恢复屏幕更新 End Sub
excel VBA 编程的更多相关文章
- 使用Excel VBA编程将网点的百度坐标转换后标注到高德地图上
公司网点表存储的坐标是百度坐标,现需要将网点位置标注到高德地图上,研究了一下高德地图的云图数据模版 http://lbs.amap.com/yuntu/reference/cloudstorage和坐 ...
- Excel VBA 教程
https://www.w3cschool.cn/excelvba/ Excel VBA 编程教程 https://www.yiibai.com/vba VBA教程 http://www.acc ...
- 来吧!带你玩转 Excel VBA
来吧!带你玩转 Excel VBA 从错失良机到艰辛的DOS征程,从坎坷购机自学路到转机起程,从爱好到事业,他从一个完全不懂电脑的人到VBA高级应用者,一切全是自学…… 我是罗刚君,来自四川的一个小县 ...
- 2017-5-29 Excel VBA 小游戏
---恢复内容开始--- 转一个Excel VBA的小游戏,最近对excel有了更深入的了解,功能很强大,也刷新了我对待事情的态度. 一.准备界面 我们先来把游戏界面准备好,选中前4行,行高调成50, ...
- VBA编程的工程性规划
看过很多人写的VBA代码,一团一团的,一点规划都没有,为了VBA编程更具工程性,这里讨论一下,并列出自己的一些建议:0.给VBA工程定义一个名字,而非直接使用默认的名称——"VBAProje ...
- Excel VBA(宏):添加宏
写在前面: .编写宏,打开VBA,双击ThisWorkbook对当前工作薄进行编写宏:双击Sheet1,对整个sheet编写宏: 或者创建模块,在模块里,编写.调试代码. 打开VBA的方法见第一讲,结 ...
- vba编程基础2
安装office2010的时候, 最好是 完全安装/完整安装 , 这样可以查阅 excel的 "帮助文档" 帮助文档中包含了更多的/更详细的 参考信息. 普通模块无事件, 只有 子 ...
- vba编程基础1
在主要的编程语言中, 结构体是用大括号来表示 代码段的 范围 界定的. 但是在一些比较"老的"语言中,由于历史原因, 还是使用的 是: 关键字来进行界定代码 的 结构段, 如vba ...
- Excel VBA基础教程
https://www.w3cschool.cn/excelvba/excelvba-basics.html Excel VBA语言基础 VBA语言的基础认识 详解VBA编程是什么 excel处理录制 ...
随机推荐
- ["1", "2", "3"].map(parseInt) 答案是多少?
让我们先看看最直接最粗暴的方式 没错,答案就是:[1, NaN, NaN],那为什么答案是[1, NaN, NaN]呢? 1.让我们先了解一下map函数的定义 JavaScript Array map ...
- 多行文本溢出隐藏处理,兼容ie,火狐
问题 多行文本溢出隐藏,webkit内核浏览器如谷歌支持如下写法: overflow: hidden; text-overflow: ellipsis; display: -webkit-box; - ...
- form submission
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms This module provides a series of articles ...
- JPEG 存储分割后的图象会产生锯齿
分割后的图象如果保存为 JPG 格式,物体边界会产生锯齿状的很暗的像素. 如下图所示. 这会给后续处理带了噪声, 因此,保存分割后的图象最好用无损压缩格式,如 bmp, png 等.
- pandas melt 与pivot 函数
(掌握这个,基本就完美无缺的任意按照自己的想法,更改列了.) 背景: 最近有个excel 数据需要转化的过程. 数据量还挺大的,大概有30多万. 需要把某些行变成列,有些列又变成行. 这个操作本身就比 ...
- Linux 初始化系统 systemd - journald 日志
journalctl 中文手册 archlinux - journal systemd-journald 用于检索 systemd 的日志,是 systemd 自带的日志系统. 1. systemd- ...
- 舔狗【2019河北省大学生程序设计竞赛 J题】
题目描述 > “舔狗舔狗,> 舔到最后,> 一无所有.” 有 n 只舔狗,每只舔狗的心中都有自己朝思暮想的一位. 每个人虽然受到了一万次拒绝,还毅然第一万零一次鼓起勇气. 作为一个不 ...
- 协程分析之context上下文切换
协程现在已经不是个新东西了,很多语言都提供了原生支持,也有很多开源的库也提供了协程支持. 最近为了要给tbox增加协程,特地研究了下各大开源协程库的实现,例如:libtask, libmill, bo ...
- c# Autofac依赖注入
public class Container { /// <summary> /// IOC容器 /// </summary> public static IContainer ...
- google+ sign in and get the oauth token 转摘:https://gist.github.com/ianbarber/5170508
package com.example.anothersignintest; import java.io.IOException; import com.google.android.gms ...