2つのインデックス/一致を使用すると、ランタイムエラー1004が一致プロパティを取得できません

Asrakh

以下のコードを機能させようとしていますが、残念ながら2番目のインデックス/一致はエラーをスローします。2番目の部分から「count」変数を削除して(最初のインデックス/一致で正常に機能する)、単一のセルを参照すると、コードは機能します。理由はわかりません。

新しいカウンター変数を初期化しようとしましたが、パート2でもエラーがスローされます。また、私が使用したゲットーソリューションの代わりに、forループ内の範囲内のセルを参照するためのより良い方法はありますか?

ありがとう!

Dim sht As Worksheet
Dim LastRow As Long
Dim count As Integer

Set sht = ActiveSheet
LastRow = sht.Cells(sht.Rows.count, "A").End(xlUp).Row

count = 2

    For Each i In Range("f2:f" & LastRow)
        With Application.WorksheetFunction
            i.Value = .Index(Worksheets("Area").Range("c:c"), .Match(Range("E" & count), Worksheets("Area").Range("a:a")))
        End With
        count = count + 1
    Next

count = 2

    For Each i In Range("h2:h" & LastRow)
    i.Value = count
        With Application.WorksheetFunction
            i.Value = .Index(Worksheets("Park reason").Range("C:C"), .Match(Range("G" & count), Worksheets("Park reason").Range("A:A")))
        End With
        count = count + 1
    Next

End Sub
QHarr

一致するものが見つからなかった可能性があります。最初に見つからない一致をテストします。を使用Application.Matchする場合は、テストで返されたエラーを使用して、を取得する前に一致するものが見つかったかどうかを確認できますi.value両方の一致試行に対して同じことを行います。

With Application.WorksheetFunction
    Dim test As Variant
    test = Application.Match(Range("E" & count), Worksheets("Area").Range("a:a"), 0)
    If Not IsError(test) Then
        i.Value = .Index(Worksheets("Area").Range("c:c"), test)
    End If
End With

私はおそらく次のように書き直します:

With sht
    Dim test As Variant
    test = Application.Match(.Range("E" & count), Worksheets("Area").Range("A:A"), 0)
    If Not IsError(test) Then
        i.Value = Application.WorksheetFunction.Index(Worksheets("Area").Range("C:C"), test)
    End If
End With

また、たとえば「C:C」ではなく、列全体よりも狭い範囲で作業することも検討します。使用範囲/最後の行を見つけて、それまで作業します。

フルバージョン:

Option Explicit
Sub test()

    Dim sht As Worksheet
    Dim LastRow As Long
    Dim count As Long
    Set sht = ActiveSheet
    LastRow = sht.Cells(sht.Rows.count, "A").End(xlUp).Row

    With sht
        count = 2
        Dim i As Range, test As Variant
        For Each i In .Range("F2:F" & LastRow)
            test = Application.Match(.Range("E" & count), Worksheets("Area").Range("A:A"), 0)
            If Not IsError(test) Then
                i.Value = Application.WorksheetFunction.Index(Worksheets("Area").Range("C:C"), test)
            End If
            count = count + 1
        Next
        count = 2
        Dim test2 As Variant
        For Each i In .Range("H2:H" & LastRow)
            test2 = Application.Match(.Range("G" & count), Worksheets("Park reason").Range("A:A"))
            If Not IsError(test2) Then
                i.Value = Application.WorksheetFunction.Index(Worksheets("Park reason").Range("C:C"), test2)
            End If
            count = count + 1
        Next
    End With
End Sub

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

「一致するインデックスが見つかりません」を解決する方法。エラー

分類Dev

ランタイムエラー1004:WorksheetクラスのPivotTablesプロパティを取得できません

分類Dev

ランタイムエラー1004:WorksheetクラスのPivotTablesプロパティを取得できません

分類Dev

'一致するリターンタイプがありません'; 2つの変数ストアドプロシージャを持つデータエンティティを使用してwcfサービスを作成します

分類Dev

テンプレート内の関数タイプをラムダと一致させることができないC ++をバイパスする方法

分類Dev

エラー未定義のプロパティ「一致」を読み取ることができません

分類Dev

ネストされたテンプレートでクラスメンバーポインタを使用すると、GCCエラー「子とベースのタイプが一致しません」が発生します

分類Dev

Excel VBAを使用してブックで一致するものを見つける:ランタイムエラー1004

分類Dev

GuiceAssistedInjectが一致するコンストラクターを見つけることができません

分類Dev

.NET参照が私のプロジェクト(クラスライブラリ)で利用できません。コンパイラエラー「プロセッサアーキテクチャ間の不一致」の取得

分類Dev

モナドインスタンス定義でタイプ「a」と「b」エラーを一致させることができませんでした

分類Dev

パンダは2つのデータフレーム間で一致するインデックスのセル値を置き換えます

分類Dev

getOrElseを使用して2つのマップを連結すると、型の不一致コンパイラエラーが発生します

分類Dev

一致するバインディングは使用できず、タイプは自己バインドできません。IProductsRepositoryのアクティブ化中にエラーが発生しました

分類Dev

&strのインデックス作成時に「エラー:タイプが一致しません」

分類Dev

USBスティックをマウントできません-「$ MFTMirrが$ MFTと一致しません」というエラーが表示されます

分類Dev

USBスティックをマウントできません-「$ MFTMirrが$ MFTと一致しません」というエラーが表示されます

分類Dev

フォローアップインテントで元のインテントと一致しなかったパラメーター値を取得する

分類Dev

Excel VBA:インデックスと一致関数タイプの不一致エラーを解決する方法

分類Dev

Google Datastoreエラー:一致するインデックスが見つかりません

分類Dev

412 一致するインデックスが見つかりません エラー

分類Dev

2つのデータフレームから一致する文字列のインデックスを取得

分類Dev

テンプレートクラスのオブジェクトをインスタンス化しようとすると、「一致するコンストラクタがありません」エラーが発生します

分類Dev

パンダ:ilocを使用してデータを取得すると入力インデックスと一致しません

分類Dev

コンストラクターのプロトタイプがクラスで一致しません

分類Dev

「このフォルダに一致するシンボルファイルが見つかりませんでした」。ダンプファイルを使用してデバッグしようとすると、このエラーが発生します

分類Dev

## [エラー]指定されたパターンに一致するプロジェクトファイルが見つかりませんでした

分類Dev

IOバウンドタスクでCompletableFutureを使用するときのランタイムの不一致

分類Dev

エラーによるコンパイラ:std :: pairのベクトルを使用しようとすると一致する関数がありません

Related 関連記事

  1. 1

    「一致するインデックスが見つかりません」を解決する方法。エラー

  2. 2

    ランタイムエラー1004:WorksheetクラスのPivotTablesプロパティを取得できません

  3. 3

    ランタイムエラー1004:WorksheetクラスのPivotTablesプロパティを取得できません

  4. 4

    '一致するリターンタイプがありません'; 2つの変数ストアドプロシージャを持つデータエンティティを使用してwcfサービスを作成します

  5. 5

    テンプレート内の関数タイプをラムダと一致させることができないC ++をバイパスする方法

  6. 6

    エラー未定義のプロパティ「一致」を読み取ることができません

  7. 7

    ネストされたテンプレートでクラスメンバーポインタを使用すると、GCCエラー「子とベースのタイプが一致しません」が発生します

  8. 8

    Excel VBAを使用してブックで一致するものを見つける:ランタイムエラー1004

  9. 9

    GuiceAssistedInjectが一致するコンストラクターを見つけることができません

  10. 10

    .NET参照が私のプロジェクト(クラスライブラリ)で利用できません。コンパイラエラー「プロセッサアーキテクチャ間の不一致」の取得

  11. 11

    モナドインスタンス定義でタイプ「a」と「b」エラーを一致させることができませんでした

  12. 12

    パンダは2つのデータフレーム間で一致するインデックスのセル値を置き換えます

  13. 13

    getOrElseを使用して2つのマップを連結すると、型の不一致コンパイラエラーが発生します

  14. 14

    一致するバインディングは使用できず、タイプは自己バインドできません。IProductsRepositoryのアクティブ化中にエラーが発生しました

  15. 15

    &strのインデックス作成時に「エラー:タイプが一致しません」

  16. 16

    USBスティックをマウントできません-「$ MFTMirrが$ MFTと一致しません」というエラーが表示されます

  17. 17

    USBスティックをマウントできません-「$ MFTMirrが$ MFTと一致しません」というエラーが表示されます

  18. 18

    フォローアップインテントで元のインテントと一致しなかったパラメーター値を取得する

  19. 19

    Excel VBA:インデックスと一致関数タイプの不一致エラーを解決する方法

  20. 20

    Google Datastoreエラー:一致するインデックスが見つかりません

  21. 21

    412 一致するインデックスが見つかりません エラー

  22. 22

    2つのデータフレームから一致する文字列のインデックスを取得

  23. 23

    テンプレートクラスのオブジェクトをインスタンス化しようとすると、「一致するコンストラクタがありません」エラーが発生します

  24. 24

    パンダ:ilocを使用してデータを取得すると入力インデックスと一致しません

  25. 25

    コンストラクターのプロトタイプがクラスで一致しません

  26. 26

    「このフォルダに一致するシンボルファイルが見つかりませんでした」。ダンプファイルを使用してデバッグしようとすると、このエラーが発生します

  27. 27

    ## [エラー]指定されたパターンに一致するプロジェクトファイルが見つかりませんでした

  28. 28

    IOバウンドタスクでCompletableFutureを使用するときのランタイムの不一致

  29. 29

    エラーによるコンパイラ:std :: pairのベクトルを使用しようとすると一致する関数がありません

ホットタグ

アーカイブ