-1
VBAを習得するのはかなり新しく、このコードを変更してH3:H7細胞(1,2,3,4,5 )値を(1F、2F、3F、4F、5F)に設定してマクロを動作させますか?
たとえば、H3セルの値を "1F"に変更しようとすると、以下の最初のコードがテキスト文字列を処理できないと思うので「ランタイムエラー '13':タイプが一致しません。コード?実行時エラー13テキスト文字列を持つCLngのときに矛盾が発生する
returnedNumber = CLng(words(iWord, 2)) // How should I modify to handle number and text string too?
Option Explicit
Private Sub CommandButton3_Click()
Dim cell As Range
Dim words As Variant
Dim word As String, number As Long
words = Range("H3", Cells(Rows.Count, "G").End(xlUp)).Value
For Each cell In Range("J3", Cells(Rows.Count, "J").End(xlUp)).SpecialCells(xlCellTypeConstants, xlTextValues)
If FindWord(cell.Value, words, word, number) Then
cell.Offset(, 3).Resize(, 2).Value = Array(word, number)
End If
Next
End Sub
Function FindWord(sentence As String, words As Variant, returnedWord As String, returnedNumber As Long) As Boolean
Dim iWord As Long
Dim word As String
For iWord = LBound(words, 1) To UBound(words, 1)
word = CStr(words(iWord, 1))
If InStr(sentence, word) Then
FindWord = True
returnedWord = word
returnedNumber = CLng(words(iWord, 2))
Exit Function
End If
Next
End Function
ありがとうございました!それは役に立ちました、私は "Dim number As Long"を "Dim Number As String"に変更しました。良い一日を! –
@GálTamás - よく目撃された - 私はそれを見落としていた。 – YowE3K