Równa czcionka Temat: Re: Excel for next
Autor: IDKrzych Data: 08 Sie 2010
Odwołania: 1 2 3
W dniu 08-08-2010 21:25, Ryszard pisze:
> Użytkownik "IDKrzych" <nick@poczta.onet.pl> napisał w wiadomości grup
> dyskusyjnych:eGKEUaxNLHA.1996@TK2MSFTNGP06.phx.gbl...
>> ciężko się rozeznać w tym co chciałeś uzyskać .. ale myślę że trzy
>> pętle jedna w drugiej nie są tym co potrzebowałeś...
>> ...bo w efekcie uzyskujesz 50 takich samych liczeń pętli A * 50 takich
>> samych liczeń pętli X -> zanim zmieni się parametr C który jest we
>> wzorze..
>> co chciałeś uzyskać 2500 razy powtarzając to samo liczenie to nie wiem :)
>>
>> Generalnie proponuję przećwiczyć to Twoje makro klawiszem F8 (praca
>> krokowa) i prześledzić co uzyskujesz, a co chciałeś uzyskać.
>>
>> ew. daj więcej informacji jak wygląda ten arkusz i jakie obliczenia
>> musisz na nim wykonać.
>> -i po co makro - bo podobny efekt jak wyżej uzyskasz formułą
>> np. dla pierwszego przejścia będzie to:
>> =JEŻELI(LUB(C1=4; K1="");AJ1="";AJ1=1/(2*K1*L1))
>>
>
> Spróbuję jaśniej wytłumaczyć.
> Zależy mi na końcowym wyniku takim jak otrzymany z poniższego makra
>
> Sub X()
> For A = 1 To 20
> Cells(A, 1).Value = Cells(A, 2) * Cells(A, 3)
> Next A
> End Sub
>
> z tym, że wynik z każdego wiersza musi być spełniony dla określonych
> wartości w kolejnych wierszach odpowiednio od 1 do 20 w kolumnie 4.

dalej nie rozumiem do końca .... chcesz tylko wykonywać obliczenia dla
wierszy w których w czwartej kolumnie masz wartość np: 4 ???
jeżeli tak to tylko dopisujesz warunek do tego powyżej:

For A = 1 To 20
If Cells(A, 4) = 4 Then
Cells(A, 1) = Cells(A, 2) * Cells(A, 3)
Else
Cells(A, 1) = ""
End If
Next A

jeszcze to samo rozwiązanie bardziej "obiektowo":

For Each c In Range("A1:A20")
If c.Offset(0, 3) = 4 Then
c = c.Offset(0, 1) * c.Offset(0, 2)
Else
c = ""
End If
Next c

lub po prostu wstawiając odpowiednią formulę:

Range("A1:A20").FormulaR1C1 = "=IF(RC[3]=4,RC[1]*RC[2],"""")"

Pozdrawiam
IDKrzych
"Jakkolwiek będzie - będzie inaczej, aniżeli sobie wyobrażamy
- ponieważ między Dobrem a Złem znajdujemy się w życiu i w świecie
wielowymiarowym,
w którym dokumentnie pomieszane jest Przypadkowe z Nieuchronnym."
(S. Lem 1999)