Tag: 函数

当其他用户尝试使用它时,VBAfunction错误

我做了这个简短的函数来查找一个名字是“给定姓氏”还是“姓氏,给定名字”,但是当这个由另一个用户(在另一台PC上)运行时,结果函数在错误#NAME? : Function FindName_Function(NameCell As String) As String Dim FindComma As Long Dim FindName As String FindComma = InStr(1, NameCell, ",") If FindComma <> 0 Then FindName = VBA.Right(NameCell, Len(NameCell) – FindComma) Else FindName = VBA.Left(NameCell, InStr(1, NameCell, " ") – 1) End If FindName_Function = FindName End Function 这就是函数的调用方式: 这是公式: ="Hello "&FindName_Function(INDEX(Table_HP_Effective_contact_list;MATCH(SiteID;Table_HP_Effective_contact_list[Site];0);4))&","

连续交替固定列标题和行值

我有一个固定的列标题和可变的行数据的电子表格,我想创build一个简单的工具(让目标为1点击),将用户input的列值和行数据连接到属性string('='在每个标题之后和“;”之后)。 之前看起来像这样: 看起来像这样: 输出是在一个单独的工作表中,如果可能的话保存为一个值。 列的数量可能会有所不同,所以使用定义表的解决scheme将是有用的。 使用的公式: =CONCATENATE(before!$A$1,"=",before!$A2,";",before!$B$1,"=",before!$B2,";",before!$C$1,"=",before!$C2,";") 任何援助将不胜感激。

相当于Python或MYSQL中的Excel目标searchfunction

我将如何使用Python或MySQL实现Excel目标查找function? 这是场景: 在我工作的机构,他们购买物品,然后出售给在线商店,这个网上商店申请3个不同的费用,计算最终的价格。 该机构想要在最终价格上赚取固定的金额,所以我需要计算出他们想要赚取的费用和金额的最终价格。 我知道他们想赚取的金额和初始价格,以及费用,我不知道我需要卖什么样的价格来赚取这些特定的金额。 随着Excel中他们使用目标searchfunction,计算最终价格与所有的费用和代理商想要获得的固定金额,我想用python或mysql做到这一点。 EX: a1 = 270.0$ # This is the price they buy the item c2 = 3.50$ # This is the shipping Price c3 = 0.10 # This is the FEE of the store in percentage (10%) c4 = 0.03 # This is the FEE for the credit card (0.3%) […]

VBA操作工作簿对象返回

我不能将工作表添加到从函数返回的工作簿对象 我有以下vba代码: For i = 0 To Uniq_M_Unit.Count 'Chenge data type of collection item to string wrkb_nameas = CStr(Uniq_M_Unit(i)) 'Call function that creates the workbooks passing the name of the workbook as parameter Set wrbook = AddNewWorkbook(wrkb_nameas) 'Add new worksheet to cuurrent opened workbook wrbook.Sheets.Add.Name = "XXXX" Next 而function: Public Function AddNewWorkbook(Bar As String) As […]

两个Sub程序,为什么这个函数在运行两次之后会导致一个对象variables错误

我有两个Sub程序,这两个都是非常长的时间来粘贴在这里的整体,但我已经缩小了代码块下面的函数和调用程序,这是导致错误。 我能够运行Sub 1和然后Sub 2没有任何问题,然后当我尝试重新运行Sub 1时,我收到一个object variable not set错误在这一行是在Sub 1: cName = "Current Price" cG = ActiveSheet.Rows.Find(What:=UCase(cName), Lookat:=xlWhole, SearchDirection:=xlNext).Column “当前价格”是拼写正确的,并且是作为parameter passing的每个工作表上的一个列标题,再次Sub 1首次运行良好,这可能是公开声明的问题吗? 该错误归因于下面的IsInArray函数 Sub 1 Sub Example(ws_string As String) Sheets(ws_string).Activate LR = Range("a1000").End(xlUp).Row LC = Range("zz1").End(xlToLeft).Column cName = "Fund ID" cA = ActiveSheet.Rows.Find(What:=UCase(cName), Lookat:=xlWhole, SearchDirection:=xlNext).Column cName = "BBH ID" cB = ActiveSheet.Rows.Find(What:=UCase(cName), Lookat:=xlWhole, SearchDirection:=xlNext).Column cName = […]

我在VBA中使用reDim时遇到了麻烦,无法弄清楚它是如何工作的

我想写一个函数,其中input是一个string(如ACGTTGCATGTCGCATGATGCATGAGAGCT)和一个整数(如4)。 函数应该能够识别inputstring中最常用的整数长度的子string。 我认为我应该使用reDim,虽然我已经研究了它应该如何工作,但我无法弄清楚正确的语法。 代码挑战:解决频繁的词问题。 input:string文本和整数k。 输出:文本中所有最常见的k-mers。 Function BIOINFO2(txt As String, k As Integer) Dim FrequentPatterns As String Dim ptrn As String Dim n() As Integer Dim i As Integer Dim s As Integer Dim j As Integer Dim maxCount As Integer For s = 1 To Len(txt) – k + 1 ptrn = Mid(txt, s, […]

在方法C#中使用函数中的variables

我做了一个函数来打开Excel,打开工作簿,然后将某个工作表设置为活动状态(取决于用户input)。 function… public void openExcel() { var excelObj = new Microsoft.Office.Interop.Excel.Application(); string fileName = @"C:\Users\" + userName + @"\Documents\Visual Studio 2015\Projects\ProgramForMom\ProgramForMom\bin\Debug\Excel Files\" + frm2.year.Text + " Expenses"; Workbook wb = excelObj.Workbooks.Open(fileName, 0, false, 5, "", "", false, XlPlatform.xlWindows, "", true, false, 0, true, false, false); wb.Activate(); Microsoft.Office.Interop.Excel.Worksheet ws = wb.Worksheets[frm2.month.Text]; ws.Activate(); } 我有另一种方法,我想在工作表上select范围… var cellValue […]

运行时错误“1004”:尝试查找列中的第一个匹配时应用程序定义或对象定义的错误

这是我的代码: Private Function GetRowNum(SearchedFileName As String, SearchedSheet As String, BookedColumn As Integer, DateofLoan As Date) As Integer Dim SearchedFile As Workbook Dim LastRow As Integer Dim i As Integer Set SearchedFile = Workbooks(SearchedFileName) LastRow = SearchedFile.Sheets(SearchedSheet).Cells(Rows.Count, BookedColumn).End(xlUp).Row For i = 2 To LastRow If SearchedFile.Sheets(SearchedSheet).Range(i, BookedColumn).Value = DateofLoan Then GetRowNum = i Exit For End […]

将定义的范围应用于WorksheetFunction时types不匹配

需要添加一个if语句来控制我在代码中循环的内容,所以已经开始使用这一行: If Application.WorksheetFunction.Or(checkrange.value = 0, checkrange.value = "") = "False" Then 我已经定义了checkrange如下 Set checkrange = finwb.Sheets("Strt_Dash_Final").Range(Cells((cfcll.Row + 1), q), Cells((cfcll.Row + (cfcll.value – 2)), q)) 我的代码在运行时错误13,types不匹配的工作表函数行上停止。 陈述的目的是检查范围是否只包含0或空格。 公式OR(A1:A5 = 0,A1:A5 =“”)在Excel中工作正常,所以我假设它不接受我的范围在其目前的forms(注意:我试图从checkrange.value删除。值,但这也没有工作) 任何帮助,一如既往,非常感谢! 编辑:我有Dim checkrange As range来定义它作为一个范围

我怎样才能防止自定义Excel超链接触发与拖动填充句柄 – 我只希望它响应点击

好,所以我有一个电子表格单元格中的超链接函数: =HYPERLINK(JJmp(I1030), I1030) 使用JJmp()函数: Function JJmp(x) As String dim iint as variant iint = x If IsNull(iint) Then GoTo out: If Left(iint, 1) <> "_" Then GoTo out: pat1 = """C:\Program Files (x86)\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe""" 'pat1 = """C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe""" (this is the default, and I don't want to change the reg). pat3 = […]