itanium Ierakstīts Decembris 2, 2020 Share Ierakstīts Decembris 2, 2020 (labots) Sveiki, biedri! Varbūt kāds spēs palīdzēt. Ir kalkulators, kas, balstoties uz ievades vērtībām (Range("inputCalc")) aprēķina rezultātu (Range("outputCalc")). Nepieciešams vienā piegājienā, izmantojot šo kalkulatoru, aprēķināt 3 dažādus scenārijus: inputScenario1 -> inputCalc -> outputCalc -> outputScenario1 inputScenario2 -> inputCalc -> outputCalc -> outputScenario2 inputScenario2 -> inputCalc -> outputCalc -> outputScenario3 Tad nu For loopā katram scenārijam: Scenārija ievades vērtības tiek iekopētas kalkulatorā Kalkulators aprēķina rezultātu šim scenārijam Rezultāts tiek iekopēts scenārija rezultātā Kods: Application.EnableEvents = False Application.ScreenUpdating = False Application.Calculation = xlManual For i = 1 To 3 Range("inputScenario" & i).Copy Range("inputCalc").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.Calculate If Not Application.CalculationState = xlDone Then DoEvents End If Range("outputCalc").Copy Range("outputScenario" & i).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Next i Application.Calculation = xlAutomatic Application.ScreenUpdating = True Application.EnableEvents = True Problēma šajā koda daļā: Range("inputScenario" & i).Copy Range("inputCalc").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Šī daļa ne vienmēr nostrādā un Application.Calculate izpildās uz vecajām inputCalc vērtībām. Izsaucot kodu otro reizi, parasti aprēķini nostrādā kā vajag. Googlē uz ātro neatradu, bet varbūt ir kāds veids kā pagaidīt, kamēr vērtības ir iekopējušas? Labots Decembris 2, 2020 - itanium Link to comment Share on other sites More sharing options...
itanium Decembris 2, 2020 Author Share Decembris 2, 2020 Un vajadzēja tikai pačīkstēt, lai atrastu problēmu Problēma nebija kodā, bet gan pašā lapā un šūnu referencēs. Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!