Apļveida atsauču izmantošana uz mūsu priekšrocību - Excel padomi

Mišela jautā,

Es domāju, ka esmu uz pareizā ceļa ar apļveida atsauci. Lūk, mana problēma. Man ir divas šūnas, A1=5un B1=5. Es vēlos, lai B1 iegaumē 5, un tad es vēlos pievienot A1 jaunu vērtību, teiksim, ka A1 tagad ir vienāds ar 10. Vai man var būt B1 formula, kas iegaumē 5, bet pievieno arī 10? Tātad tagad B1=15?

Parasti apļveida atsauces ir slikta lieta, bet dažreiz tās var izmantot mūsu labā. Šis ir makro veids, kā darīt to, ko vēlaties darīt. Tas darbosies tikai noteiktās situācijās.

  • Izvēlnē Excel atlasiet Rīki> Opcijas.
  • Atveriet cilni Aprēķins. Atzīmējiet izvēles rūtiņu Atkārtojumi. Mainiet maksimālo atkārtojumu skaitu uz 1.
  • Noklikšķiniet uz Labi, lai aizvērtu opciju dialoglodziņu.
  • Šūnā A1 ievadiet 5.
  • Šūnā B1 ievadiet 0
  • Ievadiet =A1+B1šūnā B1
  • Tagad, ievadot jaunas vērtības A1, ieraksts B1 atcerēsies veco kopsummu un pievienos vērtību no A1.

Šeit ir MILZĪGS ierobežojums. Jūs nevarat ievadīt nekādas vērtības citur lapā! Jebkurā laikā, kad ievadāt vērtību vai lapa tiek pārrēķināta, vērtība A1 tiek pievienota vērtībai B1. Tādējādi, triecot F9 vairākas reizes, jūs redzēsiet, kā B1 palielinās par 5 katram F9.

Drošāks veids, kā to izdarīt, ir ar nelielu notikumu apstrādātāja makro. Šis kods būs jāpievieno Sheet1 koda rūtī (pieņemot, ka strādājat pie Sheet1). Pasākumu apstrādātāja kods būtu šāds:

Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = “$A$1” Then Application.EnableEvents = False Range(“B1”).Value = Range(“B1”).Value + Target.Value Application.EnableEvents = True End If End Sub

Šis koda bits tiek palaists jebkurā laikā, kad lapā tiek mainīta šūna. Mērķis ir īpašs objekta mainīgais, kas norāda, kura šūna tika mainīta. Pasākumu apstrādātājs pārbauda, ​​kura šūna tikko tika mainīta. Ja šūna bija A1, tad tā vērtību A1 pievienos B1. Mainot B1, mums ir jāizslēdz notikumu apstrādātāji, lai notikumu apstrādātājs vairs sevi nesauktu.

Interesanti raksti...