Tag: vba

如何使用Access / VBA复制到剪贴板?

在Access2003 / 2007中使用VBA。 如何将stringvariables的内容复制到剪贴板? 该站点build议创build一个零长度的TextBox,将该string复制到TextBox,然后运行DoCmd.RunCommand acCmdCopy 。 啊。 我的意思是,我们可能会走下去的路线。 但仍然。 啊。 虽然MS知识库文章向我们展示了如何做,但涉及到许多Windows API调用。 育。 这是唯一的两个select吗?

使用Excel VBA执行命令提示符下的命令

我有一个固定的命令,我需要通过命令提示符使用VBA,然后命令应该运行。 例如“perl a.pl c:\ temp” 以下是我正在尝试使用的命令,但它只是打开命令提示符,不运行该命令。 Call Shell("cmd.exe -s:" & "perl a.pl c:\temp", vbNormalFocus) 请检查。

Dim,Global,Public和Private作为模块化字段访问修饰符有什么区别?

在VB6 / VBA中,可以在特定的Sub或Function方法之外声明模块级别的variables。 我在模块内部使用了Private和Public ,并且像这样理解它们: Public – 对模块内的所有代码和模块外的所有代码都是可见的,实质上使其成为全局代码。 Private – 仅对模块内部的代码可见。 我注意到你可以使用Dim和Global作为模块化variables的修饰符。 Dim和Global分别与Private和Public不同,当用作模块化字段的访问修饰符时? 如果是这样,他们有什么不同?

将parameter passing给VBA中的构造函数

你怎么能构造对象直接传递给你自己的类? 像这样的东西: Dim this_employee as Employee Set this_employee = new Employee(name:="Johnny", age:=69) 不能做到这一点非常烦人,而且最终会有肮脏的解决scheme来解决这个问题。

如果值匹配,将单元格数据连接成另一个数据

我在同一张Excel表中有两columns A and B 我想,如果在Column B两个值匹配,那么它应该复制相关的值在同一行中的值。 例如 表 Column A Column B xyz 1 abc 1 pqr 1 eee 2 qqq 3 www 4 oop 5 Desierd输出 column A Column B xyz,abc,pqr 1 eee 2 qqq 3 www 4 oop 5

删除无法用SpecialCells抓取的行的最快方法

基于本网站上的另一个问题 ,我开始想知道删除所有具有一定条件的行的最快方法。 上面提到的问题带有各种解决scheme: (1)循环浏览表单中的所有行(向后)并删除符合条件的所有行。 (2)首先将适用的范围移动到数组中,然后评估数组中的条件,并基于此 – 在基础工作表上逐个删除所有行。 可能的改进可能是删除块中的所有行,以减less访问工作表的开销。 但是,如果你走这条路线,那么在你实际删除之前,你有各种select来“存储”范围: (1)使用Intersect来合并应该删除的范围。 (2)简单地写一个所有要删除的行的String 。 那么,这是最快的方法呢?

我可以使这个macros更有效率或更快?

我是全新的编码。 这个macros运行缓慢,我希望有人能帮我清理它。 在此先感谢您的帮助。 我开发了代码来更新我公司的“呼叫路由器”工作表,其中包含从外部购买的新线索。 这些线索以原始格式在我们的工作表中被称为Fresh Agents Leads。 一旦“新鲜代理信息”表复制到“呼叫路由器”工作表中的“MSS呼叫路由主列表”文件中,macros将减less原始数据,从而消除我们不使用的部分。 然后,重新格式化与旧呼叫路由器工作表的格式相匹配的内容,并将两者合并。 然后将新的主表重命名为呼叫路由器。 该代码旨在从容纳新鲜代理信息表的工作簿开始。 指示用户在执行代码之前在桌面上同时打开新鲜代理线索文件和MSS呼叫路由主列表。 Sheets("Fresh Agent Leads").Select Sheets("Fresh Agent Leads").Copy After:=Workbooks( _ "MSS Call Routing Master List.xlsx").Sheets(1) Columns("F:F").Select Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove Range("A1").Select Selection.Copy Columns("F:F").Select ActiveSheet.Paste Columns("A:A").Select Application.CutCopyMode = False Selection.Delete Shift:=xlToLeft Columns("C:C").Select Selection.Delete Shift:=xlToLeft Columns("E:E").Select Selection.Delete Shift:=xlToLeft Selection.Delete Shift:=xlToLeft Columns("G:S").Select Selection.Delete Shift:=xlToLeft Rows("1:1").Select Selection.Delete Shift:=xlUp Columns("C:C").Select Selection.Insert […]

获取ScriptControl以使用Excel 2010 x64

我试图使用解决这个问题 ,但是,每当我尝试运行最基本的东西,我得到一个Object not Defined错误。 我以为这是我的错(没有安装ScriptControl)。 不过,我试着按照这里所描述的安装,无济于事。 我正在使用Office 2010 64位版本运行Windows 7 Professional x64。

从Excel VBA发送格式化的Lotus Notes富文本电子邮件

我有一点Lotus脚本或Notes / Domino的知识,但我有一个程序,从很久以前的地方复制,允许我通过从VBA的Notes发送电子邮件。 我通常只使用此格式的内部通知没有真正重要。 我现在想用这个发送外部电子邮件给客户,企业types宁愿电子邮件符合我们的风格指南(基本上是一个无衬线字体)。 我正要告诉他们,代码只能用纯文本工作,但是我注意到例程确实引用了某种CREATERICHTEXTITEM对象。 这是否意味着我可以应用某种forms的正文文本string之后,它已被传递给邮件例程? 除了维护我们珍贵的品牌价值之外,这对于突出电子邮件中的某些段落也非常方便。 我已经深入了解了这个networking,看看这个代码是否可以适应,但是不熟悉Notes的对象模型,以及在线Notes资源似乎反映了应用程序本身的迷茫,这意味着我没有得到很好的远。 代码: Sub sendEmail(EmailSubject As String,EMailSendTo As String,EMailBody As String,MailServer as String) Dim objNotesSession As Object Dim objNotesMailFile As Object Dim objNotesDocument As Object Dim objNotesField As Object 昏暗的sendmail作为布尔值 “添加到报告工具集成 Dim dbString As String dbString =“mail \”&Application.UserName&“.nsf” 在错误转到SendMailError “build立与Notes的连接 设置objNotesSession = CreateObject(“Notes.NotesSession”) 在错误恢复下一步 build立连接到邮件文件 设置objNotesMailFile = objNotesSession.GETDATABASE(MailServer,dbString) […]

在具有多列的列表框中添加项目

我怎样才能添加2 columns ? 如果我使用ListBox.AddItem它会添加第一列中的项目。 我也想在2nd column添加项目。 谢谢!