首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打开excel并查找数值,返回下一列

打开excel并查找数值,返回下一列
EN

Stack Overflow用户
提问于 2017-08-10 16:14:31
回答 1查看 476关注 0票数 0

我想创建一个打开excel工作计划的脚本,在列'A‘中找到一个值,然后返回列'B’中的文本!在GE的iFIX中使用VBA!当我想将'MyValue‘声明为range时,他给出了一个错误消息。范围未知!这是我返回同一列的代码。有人能给出另一个解决方案吗?

代码语言:javascript
复制
Private Sub OPEN_MSG_Click()
    Dim FindString$
    Dim MyValue   
    Dim objExcel, objsheet, WB,WS As Object

    'Open excel file
    Set objExcel = CreateObject("Excel.Application")
    objExcel.Visible = False

    Set WB = objExcel.Workbooks.Open("C:\Program Files (x86)\Proficy\Proficy iFIX\ProjectBackup\Foutcode_Opgezuiverd.xlsx")
    WB.ACTIVATE

    Set WS = WB.Worksheets("Blad1")
    'Set objsheet = objExcel.ActiveWorkbook.Worksheets(1)

    FindString = InputBox("Enter a Search value")

    With WS.Range("A1:A800")
        Set MyValue = .Find("FindString", LookIn:=xlValues)
        If Not MyValue Is Nothing Then
            MsgBox MyValue.Column
        MsgBox MyValue.row
        End If
    End With

    ' Save the spreadsheet and close the workbook.
    objExcel.ActiveWorkbook.Close
    ' Quit Excel.
    objExcel.Application.Quit

End Sub
EN

回答 1

Stack Overflow用户

发布于 2017-08-10 18:52:12

在find方法中,您要求它将"FindString“作为字符串进行搜索。因为你想在FindString中找到值,所以你应该去掉"“。

代码语言:javascript
复制
    Set MyValue = .Find(FindString, LookIn:=xlValues)

您可能还希望将Findstring声明为字符串,以避免find方法出错。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45608045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档