0

作成したテーブルの最後の 3 行に対応する列から値を取得することになっているコードに取り組んでいます。数字はランダムになるため、このフォームの下にある必要があります。

最初の Excel シートに異なる値を持つテーブルがあります。行数と列数を計算します。

次に、列 Index に属する 2 番目のシートから最後の 3 つの値を取得します。これらのインデックスを使用して、これらのインデックスを取得し、最初の Excel シートで対応する列を識別するコードを作成します。次に、これらの値を抽出してもらいたいです。

問題は、3 つの FIRST 値が最後に取得されないことです

どうすればこれを修正できますか?

Option Explicit
Option Base 1

Sub ThreeBest()
Dim i As Integer, j As Integer, N As Integer
Dim Valeurs As Integer

Dim nb_Cells As Integer
Dim nb_Actions As Integer


nb_Cells = Worksheets("Actions").Cells(Rows.Count, 2).End(xlUp).Row - 1
nb_Actions = Worksheets("Actions").Cells(1, Columns.Count).End(xlToLeft).Column - 1
N = 3 'We want to choose the three last ones

ReDim ValeursAction(nb_Cells) As Variant

For i = 1 To N
        Valeurs = Worksheets("Performance").Cells(nb_Actions + 7 - (i - 1), 9).Value
        'I place the value from the column corresponding to Valeurs in Performance
        For j = 1 To nb_Cells
            ValeursAction(j) = Worksheets("Actions").Cells(j + 1, Valeurs + 1)

        With Sheets("Performance")
                       .Cells(5 + j, 5 - i) = ValeursAction(j)
        End With
Next j
Next i

End Sub
4

1 に答える 1