Tag: vba

使用VBA将控件添加到Excel用户窗体中的框架

我需要dynamic创build标签和button,然后将它们添加到用户窗体中的一个框架。 我该怎么做呢? 看起来应该比实际更容易。

Excel的VBA的 – 连接到SQL与信任的连接(没有uid / pwd)

有没有办法让Excel连接到Sql Server使用当前用户的networkingWindows身份validation(可信连接/集成安全性)? 我不想依靠一个SQLlogin或在我的代码中有一个用户名/密码。

在VBA中获得列的所有唯一值的更快方法?

有没有更快的方法来做到这一点? Set data = ws.UsedRange Set unique = CreateObject("Scripting.Dictionary") On Error Resume Next For x = 1 To data.Rows.Count unique.Add data(x, some_column_number).Value, 1 Next x On Error GoTo 0 在这一点上, unique.keys得到了我所需要的,但是对于有成千上万条logging的文件来说,循环本身似乎非常缓慢(而在Python或C ++这样的语言中,这完全不成问题)。

如何通过VBA获取当前Excel实例的进程ID,而不使用标题?

我如何获得我的VBA代码运行的当前Excel实例的进程ID? 我不想通过标题中的名称来询问它,当我有两个或多个具有相同标题的Excel实例时,会导致问题。

如何在Excel / VBA中获取RGB颜色的相应hex值?

我想在我的VBA代码中设置一个颜色的公共常量。 通常情况下,我可以使用: Dim BLUE As Long BLUE = RGB(183, 222, 232) 但是,由于RGB函数,没有办法公开const。 我使用在线转换器将此RGB值转换为hex,然后我找回了B7DEE8 使用: BLUE = &HB7DEE8 导致完全不同的颜色。 我认为这实际上可能是一个RGBA颜色,我已经试过B7DEE8__和颜色非常接近(最后一位数字是B8),但我想知道如何find正确的值。 注意:我并不需要代码将其转换为hex,我只需要知道如何find它,因为我在Excel工作表上使用了五个常量颜色,我想设置它们。

Excel VBA打开一个文件夹

使用2010 Excel VBA – 我只是想通过一个子打开一个文件夹。 我在这里做错了什么? VBA Sub openFolder() Dim preFolder As String, theFolder As String, fullPath as String theFolder = Left(Range("T12").Value, 8) preFolder = Left(Range("T12").Value, 5) & "xxx" fullPath = "P:\Engineering\031 Electronic Job Folders\" & preFolder & "\" & theFolder Shell(theFolder, "P:\Engineering\031 Electronic Job Folders\" & preFolder, vbNormalFocus) End Sub

VBAmacros来比较两个Excel文件的所有单元格

我试图比较两个Excel文件,并将新文件中只存在的内容存储在一张表中,并在另一张表中存储旧文件中的内容。 (基本上new – old = sheet1和old – new = sheet2 。)一个SO答案build议循环所有单元格,并做一个简单的比较。 我对VBA和macros很新,所以我不知道该怎么做。 它是如何做的(或我可以在哪里学习到这一点)?

在Excel VBA中预定义multidimensional array

我知道我们可以在Excel VBA中使用下面的定义单维数组 GroupCols = Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L") 你怎么能以相同的方式预定义multidimensional array? 另外我想用下面的方式跟踪一定的水平 Level[16][0] Level[16][1] Level[16][2] Level[8][0] Level[8][1] Level[8][2] Level[7][0] Level[7][1] Level[7][2] 第一个指标定义的水平,因此可能不是连续的…像16后有直8等等。 对于每个我需要3个信息,这是0,1,2秒的指标。 任何人都可以指导我如何在Excel VBA中实现相同的?

使用VBA删除Excel中的空行

我想通过使用下面的代码删除空行: worksheet.Columns("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete 上面的代码工作正常,但run time error '1004': No Cells were found.

如何使用VBA中的format()函数来格式化:mm excel格式的时间

是否可以使用VBA格式化[h]:mm格式的时间? 在Excel中,[mm]格式将显示25小时为25:00,125小时为125:00 我已经尝试了几件事情,例如: format(datetime, "[h]:mm") format(datetime, "H:mm") format(datetime, "hh:mm") 这些都没有预期的效果。 我也看过MS的帮助,找不到任何有用的东西。