Goitibeherako zerrenda aukera anitzeko aukerarekin

Excel orri batean goitibeherako zerrenda klasikoa bikaina da, baina aurkezten den multzotik aukera bakarra hautatzeko aukera ematen du. Batzuetan horixe da nahi duzuna, baina erabiltzaileak aukeratzeko aukera izan behar duen egoerak daude batzuk zerrendako elementuak.

Ikus ditzagun aukeraketa anitzeko zerrenda baten inplementazio tipiko batzuk.

1. aukera Horizontala

Erabiltzaileak goitibeherako zerrendako elementuak hautatzen ditu banan-banan, eta aldatzen ari den gelaxkaren eskuinaldean agertzen dira, automatikoki horizontalki zerrendatuta:

Adibide honetako C2:C5 gelaxketako goitibeherako zerrendak modu estandarrean sortzen dira, hau da

  1. hautatu C2:C5 gelaxkak
  2. fitxa edo menua Data talde bat aukeratu Datuak baliozkotzea
  3. irekitzen den leihoan, hautatu aukera bat zerrenda eta zehaztu barruti gisa Iturria A1:A8 zerrendarako iturri-datuak dituzten gelaxkak

Ondoren, makro bat gehitu behar duzu orri-moduluan, lan nagusi guztia egingo duena, hau da, hautatutako balioak gehitu gelaxka berdeen eskuinean. Horretarako, egin klik eskuineko botoiarekin goitibeherako zerrendekin fitxan eta hautatu komandoa Iturburu-kodea. Itsatsi hurrengo kodea irekitzen den Visual Basic editorearen leihoan:

Private Sub Worksheet_Change(ByVal Helburua barruti gisa) Errore bat gertatuz gero Berrekizu hurrengoa Ez bada gurutzatu(Helburua, Barrutia("C2:C5")) Ezer ez da eta Helburua.Cells.Count = 1 Orduan Application.EnableEvents = False If Len (Helburua.Offset (0, 1)) = 0 Then Target.Offset (0, 1) = Target Else Target.End (xlToRight).Offset (0, 1) = Target End Target.ClearContents Application.EnableEvents = True End End Sub bada  

Beharrezkoa izanez gero, ordezkatu goitibeherako zerrenden C2:C5 kode honen bigarren lerroko tarte sentikorra zurearekin.

2. aukera. Bertikala

Aurreko bertsioan bezala, baina hautatutako balio berriak ez dira eskuinaldean gehitzen, behean baizik:

Modu berean egiten da, baina kudeatzailearen makro-kodea zertxobait aldatzen da:

Private Sub Worksheet_Change(ByVal Helburua barruti gisa) Errore bat gertatuz gero Berrekizu hurrengoa Ez bada gurutzatzen (Helburua, Barrutia("C2:F2")) Ez da ezer eta Helburua.Gelulak.Count = 1 Orduan Application.EnableEvents = False If Len (Helburua.Offset (1, 0)) = 0 Then Target.Offset (1, 0) = Target Else Target.End (xlDown).Offset (1, 0) = Target End Target.ClearContents Application.EnableEvents = True End End Sub bada  

Berriz ere, behar izanez gero, ordeztu C2:F2 goitibeherako zerrenden barruti sentikorra zurearekin kode honen bigarren lerroan.

3. aukera. Zelula berean metaketarekin

Aukera honetan, metaketa goitibeherako zerrenda dagoen gelaxka berean gertatzen da. Hautatutako elementuak edozein karakterez bereizten dira (adibidez, koma):

Gelaxka berdeetan goitibeherako zerrendak modu guztiz estandarrean sortzen dira, aurreko metodoetan bezala. Lan guztia, berriro ere, fitxa moduluko makro batek egiten du:

Private Sub Worksheet_Change(ByVal Target Range As) Errore bat gertatuz gero, Berrekizu Hurrengoa Ez bada Ebakitzen (Helburua, Barrutia("C2:C5")) Ez da ezer eta Helburua.Cells.Count = 1 Ondoren Application.EnableEvents = False newVal = Helburuko aplikazioa.Desegin oldval = Helburua If Len(oldval) <> 0 And oldval <> newVal Then Target = Target & "," & newVal Else Target = newVal End If If Len (newVal) = 0 Then Target.ClearContents Application.EnableEvents = True End If End Sub  

Nahi izanez gero, kode-lerroko 9. lerroko bereizle-karakterea (koma) ordez dezakezu zurea (adibidez, zuriune bat edo puntu eta koma).

  • Nola sortu goitibeherako zerrenda soil bat excel orri-gelaxka batean
  • Goitibeherako zerrenda edukiarekin
  • Goitibeherako zerrenda falta diren aukerak gehituta
  • Zer dira makroak, nola erabili, non txertatu makro-kodea Visual Basic-en

Utzi erantzun bat