Visual basic-ben, hogy oldjam meg ezt a problémát?
Egy adott tartomány összes elemét szeretném összegezni például. Ezt 2 Do While Loop függvénnyel hogy tudnám megoldani. például az első 6 oszlop és 10 sornál. Ha egymásba teszem őket ( Do While i <= 10
Do While k <= 6...
k=k+1 Loop
i=i+1 Loop) akkor nem leszjó, csak az első sorra végzi el. Hogyan kéne megcsinálnom?
De jó lesz, csak jól kell megírni.
Valamint fölösleges a Do While ciklus, jóval egyszerűbb két for ciklus.
Első válaszoló:
Ha az excelt nézzük, akkor az A1:F10 tartomány celláiban levő számokat szeretném összegezni. szóval k: 1-6 i: 1-10-ig kéne, hogy menjen.
A Pascal is elég érthető nyelv :) remélem megérted.
var x, y : integer;
tomb : array[1..32, 1..32] of integer;
osszeg : integer;
begin
//véletlenszám generátor...
Randomize;
//összeg kezdőérték
osszeg := 0;
//feltöltjük a tömböt véletlen számokkal 0..99
for x := 1 to 32 do for y := 1 to 32 do tomb[x, y] := Random(100);
//bejárjuk és összeadjuk a tömb elemeit
for x := 1 to 32 do for y := 1 to 32 do Inc(osszeg, tomb[x, y]);
//Inc(osszeg, tomb[x, y]) --> osszeg := osszeg + tomb[x, y]
//kiírjuk az eredményt
WriteLn(osszeg);
//Enter-re vár
ReadLn;
end.
VBA két makro:
Sub Feltolt()
Randomize
For n = 1 To 10
For i = 1 To 10
Cells(i, n) = Int(Rnd() * 100)
Next i
Next n
End Sub
Sub Osszead()
Dim osszeg As Integer
osszeg = 0
For n = 1 To 6
For i = 1 To 10
osszeg = osszeg + Cells(i, n)
Next i
Next n
Cells(12, 1).Value = osszeg
End Sub
Erre gondolsz ?
Pontosan, hálás vagyok, köszönöm szépen. De egészen jól értelmeztem a Pascalt is :D
Köszönöm.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!