Tag: vba

Excel vba进度条不工作:无效的属性值

我想从Excel VBA教程下面的代码,但它失败:ProgressBat不更新,再加上UserForm1.ProgressBar1.Value = UserForm1.ProgressBar1.Value + 1行得到highlited错误“运行时错误380.无效的属性值”。 Sub ShowProgressBar() Dim lAllCnt As Long Dim rc As Range lAllCnt = Selection.Count UserForm1.Show UserForm1.ProgressBar1.Min = 1 UserForm1.ProgressBar1.Max = lAllCnt For Each rc In Selection UserForm1.ProgressBar1.Value = UserForm1.ProgressBar1.Value + 1 Next Unload UserForm1 End Sub 什么可能是错的?

InputBox与模块中的多个子潜在variables

这是我的代码的开始: Private FilesPath As String Private CostCentersPath As String Private FinalPath As String Private CurrentName As String Private CostCenters As Worksheet Private Final As Workbook Private Template As Worksheet Sub ReadySetGo() FilesPath = "O:\MAP\04_Operational Finance\Accruals\Accruals_Swiss_booked\2017\Month End\10_2017\Advertising\automation\" 'path change ("automation") CostCentersPath = FilesPath & "CostCenters.xlsx" CurrentName = InputBox("Please adjust the final file name:", , "ABGR_2017-10_FINAL.xls.xlsx") FinalPath […]

VBA SQL查询表错误

我试图从ACD呼叫数据系统, Nortel Contact Center 6.0获取数据,如果您使用的是特定系统,我试图捕获的是每天通话数据。 但是,当我使用这个代码 (sCW是一个常见的string,等于eCallByCallStat和sDate是 dDate = Format(Month(deffDate) & "/" & iStartDay & "/" & Year(deffDate), "mm/dd/yyyy") sDate = Format(dDate, "yyyymmdd") ) sSql = "" sConn = "ODBC;DSN=Aus1S002;UID=somevaliduser;PWD=avalidpassword;SRVR=Thecorrectserver;DB=blue" sSql = "SELECT " & sCW & sDate & ".Timestamp, " sSql = sSql & sCW & sDate & ".CallEvent, " sSql = sSql & […]

查找并select多行

如何search文本列并select与search文本匹配的所有列和行? 样本表: ColA ColB ColC ColD Row1 Bob Row2 Jane Row3 Joe Row4 Joe Row5 Jack Row6 Jack Row7 Jack Row8 Peter Row9 Susan 所以marcosearch“Jack”,那么它应该selectColA-D中的所有Row5-7。

合并保留字符格式的2个Excel单元格的内容(使用VBA)

正如标题所说:我尝试将2个单元格的内容合并到Excel中的第3个。 在这里有一个类似的问题,但这些解决scheme不保持字符格式完整。 例如,部分源单元格内容格式为粗体和红色,其他部分正常。 当我像他们合并他们 Range("A3") = Range("A1") & Range("A2") 那么A1和A2的任何格式都将丢失。 我需要的是保持格式完整的解决scheme。 这将成为一个更大的VBA程序的一部分,所以我需要一个VBA解决scheme,没有公式,请。 Excel版本是2002(XP)。

如何将Variant数组转换为Range?

我有一个Varianttypes的二维数组。 填充数组的大小和值是基于工作表中的数据生成的。 这个arrays需要进一步的处理,主要是几个值的插值。 我正在使用这个插值函数 (我知道有关excel的等价函数,但是没有使用它们的deviseselect)。 我遇到的问题是内插函数需要一个Range对象。 我已经尝试修改函数来使用Variant( r as Variant )参数。 以下行nR = r.Rows.Count可以用nR = Ubound(r)replace。 虽然这个工作,我也想通常在任何工作表中使用此function,不以任何方式更改function。 Sub DTOP() Dim term_ref() As Variant ' snip ' ReDim term_ref(1 To zeroRange.count, 1 To 2) ' values added to term_ref ' ' need to interpolate x1 for calculated y1 ' x1 = Common.Linterp(term_ref, y1) End Sub 插值函数 […]

在Excel VBA中,如何访问存储在已安装的加载项中的子文件?

我已经创build了一个Excel加载项。 在那个插件是一些模块,让我们说module1是他们之一。 在module1中我有一个声明为公共子abc()结束子 在我的工作簿中,我希望能够使用添加中定义的函数abc。它似乎不工作! 例如,我安装了Addin,现在它出现在VBAProject部分。 我在我的主要工作簿(这不是附加工作簿)中创build一个子,并有一个名为DEF说 sub def() call abc end sub sub def1() call module1.abc end sub 这些都不起作用。 请帮忙。

Excel:如果我在同一个工作簿上打开两个窗口,为什么macros在第一个窗口停止工作?

我正试图在Excel中设置一个button,以同时显示两个单独的工作表的双重视图。 这是我迄今为止所写的代码(见下文)。 到目前为止,代码似乎工作。 问题是顶部窗口在工作表上有一些ActiveX控件,他们似乎停止工作,直到底部的窗口再次closures。 为什么会发生这种情况,我该如何解决这个问题? 谢谢。 Private Sub DualViewButton_Click() Dim windowToPutOnTimeline As Window If Windows.Count = 1 Then ThisWorkbook.NewWindow Windows.Arrange xlArrangeStyleHorizontal, True, False, False Set windowToPutOnTimeline = Windows(1) If Windows(1).Top < Windows(2).Top Then Set windowToPutOnTimeline = Windows(2) End If With windowToPutOnTimeline .Activate HorizontalTimelineSheet.Activate .DisplayGridlines = False .DisplayRuler = False .DisplayHeadings = False .DisplayWorkbookTabs = False […]

在Excel脚本中用点replace逗号

我想用点replace逗号,反之亦然 Public Sub VirgulaPunct() Dim oRow As Range Dim cell As Range Dim i As Long, j As Long Dim MyString As String Dim aux As String Application.ScreenUpdating = False For i = Selection(Selection.Count).Row To Selection.Cells(1, 1).Row Step -1 For j = Selection(Selection.Count).Column To Selection.Cells(1, 1).Column Step -1 MyString = Cells(i, j).Value For Counter = […]

LDAP查询通过URL

我正在尝试通过Visual Basic进行LDAP查询。 我没有Active Directory的pipe理员权限,但是我可以查看所有用户对象。 我不知道有什么限制,如果有我通过LDAPsearch目录://查询。 在我正在构build的Excel应用程序中,我有一个用于input用户标识的列。 一旦用户input了用户ID,我想根据与该用户关联的服务器端信息自动填充其他列(例如电子邮件地址) 比方说,c.Value是已经input到电子表格中的用户ID值: strUser = "CN=" & c.Value & ",OU=User Accounts, OU=Area ,OU=Users,OU=Accounts,DC=joe,DC=bloggs,DC=co,DC=uk/" Set objUser = GetObject("LDAP://" & strUser) 问题是这个 – 其中OU = Area是已知的,search是成功的。 但是,我想查询检查所有区域用户名的用户名。 据我所知,他们不是在中央位置举行或镜像。 在这样的查询中是否可以使用通配符? 有没有人有任何其他的想法或build议,以交替的方式去做到这一点? 谢谢, 汤姆