- 博客(23)
- 资源 (7)
- 收藏
- 关注
原创 不打开另一个工作簿取它里面的工作表名
Sub test() Dim cn As Object, cat As Object, tbl As Object, str$ Set cn = CreateObject("ADODB.Connection") Set cat = CreateObject("ADOX.Catalog") Set tbl = CreateObject("ADOX.Table"
2010-02-27 23:34:00 3628
原创 EXCEL表的自杀代码
With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName .Close FalseEnd With
2010-02-27 22:37:00 1966
原创 用VBA创建EXCEL表的桌面快捷
Sub CreatShortCut() Dim WSHShell Set WSHShell = CreateObject("WScript.Shell") Dim MyShortcut, DesktopPath DesktopPath = WSHShell.SpecialFolders("Desktop") Set MyShortcut = WSH
2010-02-26 20:47:00 954
原创 VSTO 隐藏EXCEL2007的菜单栏
private void button1_Click(object sender, EventArgs e){ Application.ExecuteExcel4Macro("show.toolbar(/"ribbon/",false)");}private void button2_Click(object sender, EventArgs e){
2010-02-23 16:44:00 2482
原创 取当前用户登录域和登录名
private void button1_Click(object sender, EventArgs e) { MessageBox.Show(System.Security.Principal.WindowsIdentity.GetCurrent().Name); } C#里只需要这么一句话,而VBA环境里试了好几个方法,都只能取到本地机
2010-02-22 21:54:00 1907 1
原创 列出指定文件夹中的子文件夹和文件
VBA列出文件夹中所有的子文件夹 Sub ShowFolderList() Dim fso As Object, oFolder As Object Dim oFolderArray As Object, f As Object Dim k& Set fso = CreateObject("scripting.filesystemobject")
2010-02-21 13:39:00 2708
原创 获取所选取表名和区域的名称
private void ThisWorkbook_Startup(object sender, System.EventArgs e) { this.SheetSelectionChange += new Microsoft.Office.Interop.Excel.WorkbookEvents_SheetSelectionChange
2010-02-20 13:58:00 1304
原创 TreeView控件的通用代码
With TreeView1 .Style = tvwTreelinesPlusMinusPictureText .LineStyle = tvwRootLines .CheckBoxes = False With .Nodes .Clear .Add Key:="TEST", Text:="TEST"
2010-02-20 11:40:00 1305
原创 禁止工作表右击菜单
private void InternalStartup() { this.ActivateEvent += new Microsoft.Office.Interop.Excel.WorkbookEvents_ActivateEventHandler(ThisWorkbook_ActivateEvent); th
2010-02-19 13:44:00 1011
原创 NewSheet事件的疑惑与郁闷
C# 的代码using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Windows.Forms;using System.Xml.Linq;using Microsoft.VisualStudio.
2010-02-18 21:22:00 1155
原创 OFFICE 2007 SP2安装的问题
前几天重装系统,安装集成SP2的OFFICE 2007时候弹出错误(其他什么软件都还没装),忽略错误后安装的是没打补丁的2007,我想那就360下补丁安装呗,谁知26个补丁一个都没打上,晕死。弄了好一会,还是没弄好,卸载了,先装了VS 2008,然后再装OFFICE 2007,竟然OFFICE 2007 SP2集成版整个安装了上去,死马当活马医竟然医好了。在360上的反馈补丁问题论坛里见很
2010-02-17 16:11:00 751 1
原创 EXCEL export to TXT
Sub Export2TXT() Dim arr, i&, k%, str$ Open ThisWorkbook.Path & "/test.txt" For Output As #1 arr = [a1].CurrentRegion For i = 1 To UBound(arr) str = "" For k = 1
2010-02-10 23:11:00 1130
原创 设置EXCEL的默认打印机
系统设置了一个默认打印机,但在EXCEL有些人喜欢用其它的打印机做默认项,这个可以通过EXCEL的workbook的事件来实现Private Sub Workbook_BeforePrint(Cancel As Boolean) Application.ActivePrinter = "pdfFactory Pro 在 FPP3:" End Sub 注意: 1、括号里
2010-02-09 14:24:00 7160 1
原创 把WORD中的文本框批量转换为图文框
Sub test()Dim obj As ShapeFor Each obj In ActiveDocument.Shapes If obj.Name Like "Text Box*" Or obj.Name Like "文本框*" Then obj.ConvertToFrame End IfNextEnd Sub
2010-02-08 15:07:00 2232
原创 列出所有最近使用的工作簿
private void button1_Click(object sender, EventArgs e){ StringBuilder sb = new StringBuilder(); for (int i = 1; i < this.Application.RecentFiles.Count; i++) { sb.Append(this.
2010-02-07 20:32:00 578
原创 列出所有工作表的名称
在sheet1里插入button1,双击输入click事件 private void button1_Click(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); foreach (Excel.Workshee
2010-02-07 20:25:00 922
原创 如何取相同项的最后一次值
示例说明:A列是料号列,只需要取重复项的最后一行数据,例如B料号是取黄色行数据。该实例可用于公司BOM表中取最近日期数据 源数据 结果 VBA代码:Sub test()Dim cn As Object, sql$Set cn = CreateObject("ADODB.Connection")Sheet2.[a1:d65536].Cl
2010-02-05 23:46:00 1823
原创 用自定义函数判断指定文件夹下是否包含子文件夹
Function CheckFolder(sPath As String) As Boolean If Right(sPath, 1) <> "/" Then sPath = sPath & "/" Dim sDir As String sDir = Dir(sPath & "*.*", vbDirectory) While sDir <> ""
2010-02-03 21:54:00 773
转载 创建指定程序的桌面快捷方式--以记事本为例
Sub CreatShortCut() Dim WSHShell Set WSHShell = CreateObject("WScript.Shell") Dim MyShortcut, MyDesktop, DesktopPath DesktopPath = WSHShell.SpecialFolders("Desktop") Set MySho
2010-02-03 21:48:00 2050
原创 删除工作簿中所有定义的名称
Sub delNames()Dim vNameFor Each vName In ThisWorkbook.Names vName.delteNextEnd Sub 或者在立即窗口输入此句代码后回车for each vName in thisworkbook.Names:vname.delete:next
2010-02-03 21:04:00 1087
原创 用VBA实现OUTLOOK接收新邮件后的自动转发
OUTLOOK自带的规则虽然可以设置自动转发,但这个规则是建立在服务器上的,但有些公司为了防止机密外泄而设置了服务器自动转发限制。解决的方法可以用OUTLOOK事件的方法来实现:Private Sub Application_NewMail() Dim myItem As Outlook.MailItem Set myItem = Application.Activ
2010-02-02 22:54:00 8417 2
原创 倒置文本的自定义函数
A1=欢迎来到CSDN论坛 一、倒置全部文本字符 Function 倒置文本(str As String)倒置文本 = StrReverse(str)End Function B1=倒置文本(A1)=坛论NDSC到来迎欢 二、倒置汉字,英文字母和数字不倒置 Function 倒置(str As String)Application
2010-02-01 22:48:00 893
原创 银行账号和身份证号的数据有效性设置
身份证,15位或18位,只能是数字,不能有空格和其他字符,除18位最后一位外,不能有英文字母=((LEN(A2)=15)+(LEN(A2)=18))*(ISNUMBER(VALUE(A2))+(ISNUMBER(VALUE(--LEFT(A2,17)))*(RIGHT(A2,1)="X"))) 银行账号,务必是901开头,011结尾,20位=(LEFT(B2,3)="901")*(
2010-02-01 15:52:00 1016
EXCEL工作表事件改变值
2010-01-14
生成1-10的组合数
2009-12-25
Vlookup只能查出第一个匹配的单元格
2009-11-21
Vlookup只能查出第一个匹配的单元格
2009-11-21
excel宏操作,求解
2009-08-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人