Tag: 方法

尝试从另一个模块使用类方法时,VBA错误424

我在excel 2013的类模块中有一个名为autoCRUD的类。从另一个模块(一个普通的模块)我尝试从这个类中调用一个方法,并得到“Object required”exception。 这里的方法是: Public Function CreateCRUDView(TipoCRUD As String) 'TipoCRUD pode ser C (Create), R (Read), U (Update), D (Delete) Dim myForm As Object Dim NewFrame As MSForms.Frame Dim NewButton As MSForms.CommandButton Dim NewListBox As MSForms.ListBox Dim NewLabel As MSForms.Label Dim X As Integer Dim Line As Integer Dim t As Integer Dim arrLeg() As […]

未findActiveXcombobox方法或数据成员

我有一个叫做Home的combobox(称为userBox )。 它有select的选项之一,让我们说"User A" 。 所有我想要做的是分配"User A"stringusr ,但我不断收到编译错误: 未find方法或数据成员 Sub fixPls() Dim row As Integer, col As Integer, usr As String, tbl As String, found As Boolean, k As Integer, payType As String Set wb = ThisWorkbook Set ws = wb.Sheets("Home") ws.Activate Application.DisplayAlerts = False Application.ScreenUpdating = False lastRow = Range("B16").End(xlUp).row usr = ws.userBox.Value tbl […]

VBA Validation.Add方法失败

因此,我打开了一个新的Excel工作表,以便了解有关通过VBA进行数据validation创build的更多信息,并且我从Microsoft Developer Network网站input了以下代码: With Range("$E$5").Validation .Add Type:=xlValidateWholeNumber, _ AlertStyle:=xlValidAlertStop, _ Operator:=xlBetween, Formula1:="5", Formula2:="10" .InputTitle = "Integers" .ErrorTitle = "Integers" .InputMessage = "Enter an integer from five to ten" .ErrorMessage = "You must enter a number from five to ten" End With 我执行代码时出现以下错误: 运行时错误“-2147417848(80010108)”: 方法“添加”对象“validation”失败 我到处search,但没有发现任何问题…

1004错误(范围级别的select方法失败)

我目前正在使用一个工具,获取一些数据,但不是公式或其他格式。 只是纯文本。 但它给了我1004的错误。 这是我的代码: Sub WBS() Dim sourceColumn As Range, targetColumn As Range Set sourceColumn = Workbooks("totalcosts.xlsm").Worksheets(3).Range("A3:A300") Set targetColumn = Workbooks("Backing sheet.xlsm").Worksheets(2).Range("C6:C300") sourceColumn.Copy targetColumn.Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.CutCopyMode = False Call Resource_Name End Sub 它总是给我错误的targetcolumn.select 但是当我用这个代码复制粘贴就行了, *"sourceColumn.Copy destination=targetcolumn"* 它粘贴我需要的数据。 但是它复制公式而不是值。

VBAvariables暗淡的问题

在VBA上只是一个简单的问题 我正在学习VBA中的类模块,并且遇到了在类模块中声明variables的新练习。 这里是: Public WithEvents TxtGroup As MSForms.TextBox 也 Dim Word1 As Word.Application Dim bottomLabel As New System.Windows.Forms.Label 在这之后的As和New关键字,而不是看到一个数据types或一个对象或一个类对象的引用,我们看到两个单词join一段时间就像某种目录…例如MSForms.TextBox,因为我的问题是一些开箱即用的function,我无法在我的VBA书上find关于这种声明技术转换的充分解释。 我需要非常快速地学习类,我一定会问,为什么我会遇到这种做法,因为我从来没有在模块中看到它。 我已经看到了一些例子 Private Sub xlApp_NewWorkbook(ByVal Wb As Workbook) Dim wks As Worksheet With Wb For Each wks In .Worksheets wks.PageSetup.LeftFooter = “Created by: “ & .Application.UserName wks.PageSetup.RightFooter = Now Next wks End With End Sub 为什么这些代码块在声明中没有名称空间,而其他代码块呢? […]

Excel VBA:是否可以使用自定义方法创build自定义函数?

我指的是,例如,你可以做什么: Range().Select 其中“范围()”是function,“select”是方法。 例如,如果我有一个函数,我想要三个代表三angular形的边长的双打,并以弧度或弧度吐出最大的angular度。 Public Function getAngle(a as Double, b as Double, c as Double) .degrees = 'some equation to determine degrees as a double .rads = 'some equation to determine radians as a string End Function 因此,你会得到以下结果: getAngle(3,4,5).degrees:90.0 getAngle(3,4,5).rads:“0.5π”

VBA中的Excel TextToColumns方法忽略公式

首先,请允许我说,我希望在原来的同一篇文章中提出这样的礼节。 这一切都是一样的,但我不确定这是否正确。 所以,如果我不对,请纠正我,以便我可以解决它。 我创build了一个macros来执行TextToColumns。 我编辑和清理macros。 直到我开始使用公式将数据传播到这些字段中,而不是手动将数据复制到这些字段中,这正是我以前所做的工作。 现在,我已经扩展了我的工作表模块代码,并意识到我几个月前写的方法干扰现在将值复制到我原来执行TextToColumns的字段中的公式。 总之,有没有办法告诉.TextToColumns采取它的工作范围的值 ,并忽略公式? Sheet4.Range(categorySrcColumn & srcCategoryColLastRow) .TextToColumns _ Destination:=Range(categoryDestColumn), _ Other:=True, _ OtherChar:="/", _ FieldInfo:=Array(1,1), _ TrailingMinusNumbers:=true 我检查了TextToColumnssearchxlValues的文档,但找不到像这样的东西。 ———-附录———– 雷切尔。 我感谢你的意见。 也许你可以帮助一点点。 我已经插入你的build议,但它只是无所事事。 我已经在这里采取了一些libterties希望结合你给我所需要的东西。 免责声明:我绝不是VBA开发人员。 我知道的是我从谷歌学到的东西。 我住在Unix / Linux世界,所以这是一个非常不同的鸟,我习惯于。 这是我到目前为止… Public Function sbTextToColumn(srcRange As String, dstRange As String) Dim vData As Variant vData = Split(ActiveSheet.Range(srcRange).Value, "/") ' I need […]

使用对象浏览器中未列出的对象属性

我一直在研究VBA中对象属性和方法的底层结构。 我刚刚读过,每个对象的所有属性和方法都列在开发者框的“对象浏览器”中。 我被提示看这个的原因是我使用了一个没有在对象浏览器中列出的方法。 我用了: Sheets("Front face").Shapes("Drop Down 12").ControlFormat 这允许我然后使用.List来改变形状。 但是.ControlFormat不是在对象浏览器中列出的属性/方法。 任何人都可以解释吗?

Excel编程方法

在UDF,macros,加载项,自动化加载项,XLL或VSTO之间的Excel编程有什么区别。 我应该使用哪一个,在哪种情况下?