随笔分类 -  代码集团

骚动吧,猿类!
摘要:'之一 Sub Sample() Range( "b2" ) = "=now()" If Range( "b2" ) >= Range( "c2" ) Then MsgBox "时间到" Exit Sub End If Call StartTime End Sub Sub StartTime() A 阅读全文
posted @ 2024-10-12 19:36 熬肥妖 阅读(65) 评论(0) 推荐(0)
摘要:问题:VBA代码出错,揭示“下标越界” 解决步骤: 第一步:Alt+F11打开VBE 第二步:F8逐行或F5运行至出错步骤》调试 第三步:视图》本地窗口 第四步:查看错误步骤中的变量值: arrData是14*2的矩阵,i=6,在14范围内,6大于2,所以错误存在于此 解决方案:将arrData(i 阅读全文
posted @ 2024-02-25 14:58 熬肥妖 阅读(333) 评论(0) 推荐(0)
摘要:2023-12-18更新 对参数中黄色底纹的单元格进行求和 Function CountByYellow(rng As Range) As Long Dim rngCell As Range Dim lngCnt As Long Application.Volatile lngCnt = 0 If 阅读全文
posted @ 2023-11-08 15:22 熬肥妖 阅读(44) 评论(0) 推荐(0)
摘要:利用InputBox输入一些内容,看上去比直接在单元格里输入高大上(蛮横)一些哈,如下图显示,让人在A1单元格中输入,或跳出个对话框让人输入,哪一个威力更大不言而喻。 但是在InputBox里输入,只能键盘一个字一个字地敲,至少单元格可以直接引用啊,看上去好像不怎么方便的样子。 其实,InputBo 阅读全文
posted @ 2023-11-02 14:31 熬肥妖 阅读(73) 评论(0) 推荐(0)
摘要:假设工作簿中有两个工作表,数据和首页 ThisWorkbook中添加事件代码: Private Sub Workbook_BeforeClose(Cancel As Boolean ) Sheets("首页"). Select Sheets("数据").Visible = 2 ActiveWorkb 阅读全文
posted @ 2023-08-27 16:50 熬肥妖 阅读(159) 评论(0) 推荐(0)
摘要:问题:C列相同的,GH两列的内容横向排成一行 Sub Test() Dim MyRow As Long, MyCol As Long For MyRow = Cells(Rows.Count, 3).End(xlUp).Row To 2 Step -1 If Cells(MyRow, 3) = Ce 阅读全文
posted @ 2023-04-16 17:52 熬肥妖 阅读(59) 评论(0) 推荐(0)
摘要:问题:Sheet3只有输入密码才能进入。 查看Sheet3的代码: Sub Sh() Dim MyPw As String MyPw = InputBox( "请输入密码" , "密码" ) If MyPw = "aaa" Then Sheets( "sheet3" ).Visible = 1 Sh 阅读全文
posted @ 2022-11-12 16:53 熬肥妖 阅读(208) 评论(0) 推荐(0)
摘要:问题:总表数据手动更新后,分表一键更新,同时分表手动更新后,总表一键更新。 解决思路:分别写两段代码,总表拆分用于前者,分表汇总用于后者。 数据源8列若干行,按第一列进行拆分。 更新分表的代码: Sub Spt() Dim MyShn As Long, MyRow As Long Range("a1 阅读全文
posted @ 2022-10-29 18:19 熬肥妖 阅读(570) 评论(0) 推荐(0)
摘要:问题:在Excel中,要用VBA把一个单元格(区域)复制粘贴到指定位置,可以使用录制宏的功能,自动生成的代码如下: (假设数据源在A1:C10,指定位置是E1:G10) Sub 录制宏() Range("A1:C10").Select Selection.Copy Range("E1").Selec 阅读全文
posted @ 2022-10-22 18:04 熬肥妖 阅读(2962) 评论(0) 推荐(0)
摘要:代码如下: Sub Pt() Dim FmP, ToP FmP = InputBox("请输入起始打印页", "打印", 1) ToP = InputBox("请输入结束打印页", "打印") Sheets(2).PrintOut from:=FmP, to:=ToP End Sub 阅读全文
posted @ 2022-08-07 18:26 熬肥妖 阅读(52) 评论(0) 推荐(0)
摘要:数据源如图,共7列N行,第一列为拆分依据,将一个工作表拆分成N个工作簿(Excel文件)。 代码: Sub Sample() Application.DisplayAlerts = False Dim i As Long, j As Long Dim MyTitle, MyArr Dim MyShN 阅读全文
posted @ 2022-07-17 15:46 熬肥妖 阅读(757) 评论(0) 推荐(0)
摘要:数据源如图,共7列N行,第一列为拆分依据,将一个工作表拆分成N个工作表。 代码: Sub Sample() Application.DisplayAlerts = False Dim i As Long, j As Long Dim MyTitle, MyArr Dim MyShN As Strin 阅读全文
posted @ 2022-07-17 15:08 熬肥妖 阅读(649) 评论(0) 推荐(0)
摘要:Word2003被退休了,以前做的文档都是DOC的,现在都要转成DOCX,一个一个转,那样是不是2X青年的标准做法? 不要2! 来看下魔术青年是如何搞定的~~ 注意: 以下代码保存在一个新建的文档的模块里,存为docm文件,保存路径可以和其他文件在同一文件夹内,以方便thisworkbook.pat 阅读全文
posted @ 2022-04-16 19:39 熬肥妖 阅读(177) 评论(0) 推荐(1)
摘要:Excel2003被退休了,以前做的文档都是XLS的,现在都要转成XLSX,一个一个转,那样是不是2X青年的标准做法? 不要2! 来看下魔术青年是如何搞定的~~ 注意: 以下代码保存在一个新建的工作簿的模块里,存为xlsm文件,保存路径可以和其他文件在同一文件夹内,以方便thisworkbook.p 阅读全文
posted @ 2022-04-16 19:38 熬肥妖 阅读(152) 评论(0) 推荐(0)
摘要:数据源如AB列,达成效果如DE列: 代码如下: Sub Sample() Dim MyRow As Long, MyTRow As Long, MyBRow As Long Dim MyFind As Range MyBRow = Cells(Rows.Count, 1).End(xlUp).Row 阅读全文
posted @ 2022-03-07 21:34 熬肥妖 阅读(495) 评论(0) 推荐(0)
摘要:同一文件夹内N个工作簿,每个工作簿中一个工作表,最终合并到一个工作簿内分工作表显示的代码。 假设放置以下代码的文件命名为“合并.xlsm“,并与待合并文件在同一文件夹内。 Sub Sample() Application.DisplayAlerts = False Dim MyWb As Workb 阅读全文
posted @ 2022-03-04 14:43 熬肥妖 阅读(494) 评论(0) 推荐(0)
摘要:实际这个问题不需要用VBA,因为可以直接选取所有工作表后再开始打印,但如此一来页码的设置会出现问题。 例如一个工作簿内共12个工作表,每个工作表单独打印页码为1-2页不等,全部选取后一起打印,页码会完全连续,如第三个工作表应该是“第1页,共2页”,却显示成了“第4页,共20页”这样的。 Sub Pr 阅读全文
posted @ 2022-03-04 14:22 熬肥妖 阅读(736) 评论(0) 推荐(0)
摘要:问题:20以内加减法,相加不能超过20,相减不能为负 函数公式解决 第一个数: =RANDBETWEEN(0,20) 加减符号:=IF(RANDBETWEEN(0,1),"+","-") 第二个数:=IF(C1="-",RANDBETWEEN(0,B1),RANDBETWEEN(0,20-B1)) 阅读全文
posted @ 2022-02-25 17:06 熬肥妖 阅读(279) 评论(0) 推荐(0)
摘要:本工作簿所在的文件夹里所有xlsx文件列到A列并形成超链接 Sub Sample() Dim MyName As String, MyPath As String Dim i As Long MyPath = ThisWorkbook.Path & "\" MyName = Dir(MyPath & 阅读全文
posted @ 2022-01-21 15:54 熬肥妖 阅读(110) 评论(0) 推荐(0)
摘要:一个文件夹里有N个工作簿,每个工作簿中包括N个工作表,将各个工作表拆分成工作簿,命名为每个工作簿里第一个工作表的A列和B列。 工作簿、工作表数量不定,表内内容不限,拆分后保存于当前文件夹下的“示例文件夹”内。 Sub SplitSheets() Application.DisplayAlerts = 阅读全文
posted @ 2021-09-30 17:10 熬肥妖 阅读(691) 评论(0) 推荐(0)