我的总体目标是登录到一个网站,并下载一个特定的链接,位于该网页-所有这些都通过一个VBA宏。
但是,对于这个特定的网站,我甚至不能查看页面的源代码来查看用户名/密码变量,就像这里建议的那样:
这就是网页的样子:
我无法查看源代码,因为正如您所看到的,在通过身份验证之前,我看不到从服务器返回的任何内容。
我有功能代码来打开浏览器。只是不登录。
Sub OpenInFireFoxNewTab(url As String)
Dim pathFireFox As String
'
pathFireFox = "C:\Program Files (x86)\Mozill
我正在从C# dll中定义的excel中的VBA脚本实例化一个COM对象。我实例化的C#类有一个终结器,它执行垃圾收集,特别是它引用的其他MS Office对象,我应该看到这些对象在任务管理器中出现和消失。事实上,单元测试表明,当调用dll时,Office进程会出现,当它完成时,Office进程会消失。
当从VBA调用dll时,我注意到进程在VBA函数结束后仍保持打开状态,即对象在被调用后未被清除,这使我相信VBA不会释放COM对象。
我的函数看起来像这样:
Function Raz(inp As String)
Dim o: Set o = CreateObject("foo.ba
我有一些vbs/vba脚本不时运行。但我不希望下一个vbscript在另一个vba或vbscript正在运行时继续。确定其他vbscript是否正在运行并延迟当前vbscript的执行是没有问题的:
Set objSWbemServices = GetObject ("WinMgmts:Root\Cimv2")
Set colProcess = objSWbemServices.ExecQuery _
("Select * From Win32_Process where name = 'wscript.exe'")
Do While col
为了实现多线程,在异步启动这些帮助器脚本之前,我使用VBA来构造VBScript代码(VBStr)并动态写入文件:
Dim VBFile As Object
Dim VBPath As String
VBPath = CurrentProject.Path & "\" & GUID() & ".vbs"
Set VBFile = CreateObject("Scripting.FileSystemObject").CreateTextFile(VBPath)
VBFile.WriteLine VBStr
VBFile.Cl
目前,我正在为url navigation.Now运行Access VBA,我想在一段时间后停止VBA,然后在一段时间后重新启动。即。要在第一个VBA启动时间+4小时后停止,然后要在VBA停止时间+5分钟后重新启动VBA。
基本上,我想每隔4小时停止一次VBA,然后在5分钟后重新启动VBA。也就是说,我想在4小时后启动和停止执行下面提到的代码,然后在5 minutes..Thanks后重新启动。
Private Sub getdata()
Dim Ie As New InternetExplorer
Dim WebURL
Dim Docx As HTMLDocument
Dim pr
我有一本有很多工作表的工作簿,每个工作表都有不同数量的相互关联的方程。我有一个工作簿宽的VBA计时器,应该每5秒运行一次。
当我在一个没有很多公式的工作表上活动时,它似乎每5秒运行一次.但是,如果我随后将活动表更改为更“繁忙”的工作表,则vba计时器就不会停止.或者如果它真的爆炸了,那就像几分钟后。直到我再次切换到一个不那么繁忙的工作表,然后计时器奇迹般地正常运行,而不需要重置任何东西。
我在繁忙的表格上没有任何特殊的VBA代码.我不明白为什么VBA计时器代码不能在所有的工作表上一致运行?如果计时器要受影响,则应该对所有工作表而不仅仅是特定的工作表进行影响。
下面是VBA计时器代码:
Sub
作为VBA新手,我在理解一些VBA行为时遇到了问题。
我得到了以下代码,它将数据库中的行读入activex控件,然后尝试将这些值放入数组中。SQL是专有的,在那里没有洞察力-但基本上它关心vxdata1连接,执行SQL命令并将结果集放入控件元素中。
//put all records from the db into the vxData1 datagrid
vxData1.SQLCommand = "SELECT x,y,z FROM t ORDER BY z"
//put the datagrid values into an array
Dim Array_Werte(
我想使用VBA或PowerShell来杀死当前锁定的文件(因为另一个用户打开了它)。
有没有办法做到这一点,即使我没有管理权?有1337个黑客能帮我吗?
下面是VBA中的基本设置,但是现在,当我尝试删除一个打开的文件时,我得到了一个permission denied错误。
Function fn_testKILL()
'load INI data
fn_ReadINI
'read files from iDumpFolder
Dim fs As Object
Set fs = CreateObject("S
下面是我在.Net中的函数:
<Runtime.InteropServices.ComVisibleAttribute(True)>
Public Function Unhex(hex As String) As Double()
Dim GetArr As Double() = HexStringToDoubleArray(hex)
Return GetArr
End Function
下面是我想在VBA中使用它的方式:
Dim ret() As Double
ret = LinkToComLib.Unhex("EDC531...")
关于如何将数
我可以通过下面的代码在批处理模式下执行R,但是这个方法限制了交互性,因为R在脚本完成后关闭。我希望能够在Excel用户输入的基础上进一步调用R,同时利用在第一次调用中创建的R对象。是否有一种方法可以在使用VBA向R发送消息的同时保持R的活动?
Sub Run_R()
Dim shell As Object, Rcmd As String, retval As Variant
Set shell = VBA.CreateObject("WScript.Shell")
Rcmd = "Rscript C:\test.R"
retval = shell.Run(R
我写了一段打开excel文件并读取特定字段的代码。问题是,每次我执行这段代码时,在后台启动一个excel进程,用户看不到它,但当您启动任务管理器时,您会看到一个excel进程。我想用VBA关闭这个后台进程。我已经尝试了很多不同的方法,但都没有真正起作用。我已经试过了:
wb.Close
xcelapp.Application.Quit
Set excelapp = Nothing
Set wb = Nothing
有人知道如何用vba关闭excel吗?
`Private Sub Command46_Click()
Dim wert As String
Dim sf
我正在构建一个进程(到目前为止,我已经在WindowsFramework4.7.2上尝试过VBA、Python和C# ),它需要在锁定屏幕后面的Windows10机器上将一些字符串放到剪贴板中。为了测试,我已经将它减少到只有两个命令(伪代码,因为使用了三种语言。问题末尾的详情):
SleepForFiveSec(); //to provide time for locking screen
// now locking machine
SetClipboardContent();
剪贴板在未锁定的会话上响应,但在计算机锁定时变为不可用,并返回“剪贴板锁定”错误(特定于语言)。
我已经测试了在g