2

まず、VBA エクセル コーディングの初心者であることを指摘したいと思います。次の問題について、ループ内のループをコーディングする方法がわからないようです: 私の Excel には、列 D に次の情報があります: D2:12、D3:12、D4:5

そして、次のように列 E を自動化しようとしています。E1 から E12 は D2 の情報、E13 から E25 は D3 の情報です。など... 特定の確立されたしきい値まで。

現在、次のコードをコーディングしています。

Sub salairemensuelle()

Dim xrow As Integer, xcol As interger, n As Integer, nbrdecolonnedemois As Integer 

xrow = 2 

xcol = 4

Do Until Cells(xrow, xcol).Value >= 25 'threshold of 25
        n = Range("D65536").End(xlUp).Row 'finding row of D column
        For nbrdecolonnedemois = 1 To n

End Sub

最初の D 列をループしてから両方のループを閉じる方法がわからないため、ここで立ち往生しているようです。

誰でも見てもらえますか。ありがとう

4

1 に答える 1

0

これには2つのループが必要だとは思いません。ただし、どちらのループも閉じていません。

, (またはなど) で aDoを閉じます。例:LoopLoop While

Do Until i >= 10

    i = i+1

Loop

次のようなステートメントでForループを作成します。Next

For i = 1 to 10
    MsgBox i
Next

あなたの場合、しきい値条件が得られたときにステートメントでFor ... Nextループを使用できると思います:Exit For

Sub salairemensuelle()

Dim xrow As Integer, xcol As interger, n As Integer, nbrdecolonnedemois As Integer 

xrow = 2 
xcol = 4

        n = Range("D65536").End(xlUp).Row 'finding row of D column
        For nbrdecolonnedemois = 1 To n
            'The next line terminates the loop if threshold of 25 is met:
            If Cells(xrow, xcol).Value >= 25 Then 
                Exit For
            Else:
                '### The rest of your code operates inside this ELSE block
            End If

        Next
End Sub
于 2013-08-27T03:39:56.717 に答える