Articles of vba

使用VBA将linux文本文件加载到excel中

我有一个在Linux上创build的文本文件,如果我打开它在Word中的文件正常出现。 但是,当我在记事本中打开它,当我尝试使用下面的代码加载到Excel中时,它显示为一行。 ' Open the file Open Filename For Input As #1 ' Look for the Table Title Do While Not (EOF(1) Or InStr(TextLine, TableTitle) > 0) Line Input #1, TextLine Loop 我怎样才能把它分成原始的线条? vba可以使用吗?是否有行结束的分隔符?

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

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

获取Windows下载文件夹的path

我有一些Excel VBA代码,需要知道下载文件夹path。 我怎么能这样做? 由于您可以在Downloads文件夹(以及文档和大多数文件夹,通过文件夹属性)中移动,所以像%USERPROFILE%这样的环境variables是无用的,可以构build一个类似%USERPROFILE%\Downloads的path,而WScript.Shell.SpecialFolders不会列出下载文件夹。 我想这一定是读完registry ,但我对此毫无头绪。 谢谢!

Visual Basic捕获cmd的输出

我希望Visual Basic能够在目录“C:\ projectTest \”上运行“make”命令。 我试图用这个: Dim output As String = String.Empty Using Process As New Process Process.StartInfo = New ProcessStartInfo("cmd") Process.StartInfo.WorkingDirectory = "C:\projectTest\" Process.StartInfo.UseShellExecute = False Process.StartInfo.CreateNoWindow = True Process.StartInfo.RedirectStandardInput = True Process.StartInfo.RedirectStandardOutput = True Process.StartInfo.RedirectStandardError = True Process.Start() Process.BeginOutputReadLine() AddHandler Process.OutputDataReceived, _ Sub(processSender As Object, lineOut As DataReceivedEventArgs) output += lineOut.Data + vbCrLf End […]

在安装32位和64位客户端时,获取MS Office 2013(32位)Excel和Access以连接到Oracle数据库

在我的机器上安装Oracle 11gr2的32位和64位客户端之后,我遇到了Microsoft Office产品的一些问题。 我目前正在使用Microsoft Office 32位运行Windows 7 64位。 我们依赖于一些32位应用程序,并且正在和一群人一起工作 – 他们中的大多数人都有32位的操作系统机器,所以我需要运行Office 32位。 目前,我正在创build和维护一些Excelmacrosfunction的工作簿,我们的工作人员用它来提交信息来访问数据库。 访问数据库使用sqora32.dll驱动程序连接到oracle,并使用oraclient11.dll连接excel工作簿。 我最近得到了一个ArcGIS Pro的版本,它需要一个64位的oracle客户端,并且已经在我们的生产环境中进行了testing。 我以为我已经成功地安装了64位Oracle即时客户端(我拥有32位Oracle客户端的完整pipe理员版本),因为一切运行良好。 我的32位软件的其余部分连接好。 但是,当我尝试通过访问build立一个oracle连接,驱动程序失败,或者我得到一个kernelbase错误和Access完全崩溃。 当我通过Excel vba尝试查询时,从Oracle ODBC Driver中得到一个错误。 它说,内部错误 – 无法在驱动程序加载期间初始化NLS。 我的事件日志显示oraclient11.dll失败。 当我尝试使用“以pipe理员身份运行”选项连接时,应用程序不会完全崩溃,他们只是停止工作。 我已经尝试卸载并重新安装32位oracle客户端,设置oracle_home环境variables,使用c:\​​ windows \ system32中的软链接,并更改PATH环境variables中条目的顺序,并设置NLS_LANG环境variables。 我真的很想弄清楚这一点,而不必find另一台机器来testingPro。 任何人都可以帮我解决这个问题吗? 由于我的32位软件连接正确,我认为这与Office试图使用64位驱动程序有关,但我不是这方面的专家。 所以,我不知道。 任何帮助将非常感激。 如果之前已经回答了,请提供一个链接? 我一直在上周的大部分时间里一直在search这个,并且一直无法find解决我的特定问题的任何事情。

我怎样才能使用VBA执行一个shell命令?

我想要使​​用Visual Basic for Applications执行如下的shell命令。 C:\Temp\gc.exe 1 我该怎么做?

在Windows和Mac上将Excel文件另存为PDF

我已经创build了一个macros来将我的工作表导出为PDF,但公司中的一些用户使用Mac OS。 当这些用户试图保存时,会给他们一个错误。 如何让Win和Mac用户使用相同的PDF导出? 这是我现在的代码: Sub CreatePDF() Dim wksSheet As Worksheet Set wksSheet = ActiveSheet wksSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ ThisWorkbook.Path & "\" & Range("exportName"), Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _ False End Sub

如何使用vba更改扩展文件属性

使用这个链接,我可以用vba编写一个读取扩展文件属性的程序。 现在,我想创build一个可以编辑扩展文件属性的程序 – 特别是属性22,文件的“主题”。 所以,给定一个文件path,你怎么能编辑与该文件关联的主题?

从batch file返回错误消息

我正在从VBA shellingbatch file,以启动exec文件,如Notepad.exe。 如果没有findexec文件,我想将一个指示或消息返回给VBA。 到目前为止,我已经通过让蝙蝠向文本文件写入消息来做到这一点,然后让VBA检查这个文件。 这种方法似乎有点不方便,但到目前为止,我还没有遇到一种替代方法。 @echo off set EM="C:\Msg.txt" if exist %EM% del %EM% set FL=%SystemRoot%\system32\xnotepad.exe if not exist %FL% ( echo %FL% not found > %EM% goto done ) Start "" %FL% :done

在visual basic中模拟windowskey + L?

我想在Visual Basic中模拟WindowsKey + L(将控制台locking的捷径)并将其绑定到一个函数。 所以当这个函数被调用时,它将locking控制台。 我可以这样做吗?