2017-01-28 3 views
2

Ich muss eine Schleife erstellen, um eine stufenartige Struktur in einer Excel-Tabelle mit VBA zu drucken.So erhöhen Sie eine Zeichenvariable in einer Schleife ~ VBA

Ich muss von der Zelle E1 beginnen und bis die Zahl gehen, die vom Benutzer in einem Textfeld eingegeben wird. Ich muss einen String in den Zellen E1, F2, G3 ... drucken.

benutzte ich die folgenden, aber es hat nicht funktioniert:

Dim j As Integer, N As Integer 
Dim i As String 

N = InputBox("Plese enter the number of Processes", "Enter data", "Enter number here") 

i = "E" 

For j = 1 To N 
    Range(i & j).Value = "Random text" 
    i = i + 1 
Next j 

Danke für die Hilfe :)

I need the output as in this screenshot.

Antwort

4

Use "Zellen (rowIndex, column)" Eigenschaft, die für Zahlen akzeptiert Sowohl Zeilen- als auch Spaltenindizes, die Sie inkrementieren können

Dim j As Integer, N As Integer, i As Integer 

N = InputBox("Plese enter the number of Processes", "Enter data", "Enter number here") 

i = 5 

For j = 1 To N 
    Cells(j,i).Value = "Random text" 
    i = i + 1 
Next j 
+0

Danke, es funktioniert :) – user7440066

+0

Sie sind willkommen. Vielleicht möchten Sie die Antwort akzeptieren, die am besten Ihren Bedürfnissen entspricht – user3598756

2

Verwenden Sie Range.Offset, beginnend mit "E1" und durchlaufen Sie den Wert N.

den Code unten Versuchen:

Dim N As Long 
Dim i As Long 

N = InputBox("Please enter the number of Processes", "Enter data", "Enter number here") 

For i = 1 To N 
    Range("E1").Offset(i, i).Value = "Random text" 
Next i 
+0

Danke, dieser Code funktioniert auch :) – user7440066

+0

Gern geschehen, bitte markieren Sie als Antwort eine der 2 Lösungen, die Sie erhalten haben (indem Sie auf das kleine ** V ** neben klicken sein Beitrag) –

Verwandte Themen