Salin jumlah sel sing dipilih menyang Clipboard

Kadhangkala butuh wektu sing suwe kanggo nggawe sawetara perkara. Nanging nalika padha wis wis nemokke, sawise kasunyatan padha katon ketok lan malah banal. Saka seri "apa, iku bisa?".

Saka versi pisanan, garis status ing sisih ngisor jendela Microsoft Excel kanthi tradisional nampilake total kanggo sel sing dipilih:

Salin jumlah sel sing dipilih menyang Clipboard

Yen dikarepake, bisa uga klik-tengen ing asil kasebut lan pilih saka menu konteks kanthi persis fungsi sing pengin dideleng:

Salin jumlah sel sing dipilih menyang Clipboard

Lan bubar, ing nganyari Excel paling anyar, pangembang Microsoft nambahake fitur sing prasaja nanging cerdik - saiki nalika sampeyan ngeklik asil kasebut, bakal disalin menyang clipboard!

Salin jumlah sel sing dipilih menyang Clipboard

Beauty. 

Nanging kepiye wong sing durung (utawa wis?) duwe versi Excel kasebut? Iki ngendi makro prasaja bisa mbantu.

Nyalin jumlah sel sing dipilih menyang Clipboard nggunakake makro

Bukak ing tab pangembang (Pengembang) editor visual Basic utawa gunakake trabasan keyboard iki Alt+F11. Lebokake modul kosong anyar liwat menu Insert - Modul lan salin kode ing ngisor iki ana:

Sub SumSelected() Yen TypeName(Selection) <> "Range" Banjur Exit Sub With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText WorksheetFunction.Sum(Selection) .PutInClipboard  

Logikanya sederhana:

  • Pisanan teka "perlindhungan saka wong bodho" - kita mriksa apa persis sing disorot. Yen sel ora dipilih (nanging, contone, grafik), banjur metu saka makro.
  • Banjur nggunakake printah Getobjek kita nggawe obyek data anyar ing ngendi jumlah sel sing dipilih bakal disimpen mengko. Kode alfanumerik sing dawa lan ora bisa dingerteni, nyatane, minangka tautan menyang cabang pendaptaran Windows ing ngendi perpustakaan kasebut ana. Pustaka Obyek Microsoft Forms 2.0, sing bisa nggawe obyek kasebut. Kadhangkala trik iki uga diarani implisit pungkasan naleni. Yen sampeyan ora nggunakake, sampeyan kudu nggawe link menyang perpustakaan iki ing file liwat menu Piranti - Referensi.
  • Jumlah sel sing dipilih dianggep minangka printah WorksheetFunction.Sum(Selection), banjur jumlah asil diselehake ing clipboard karo printah PutInClipboard

Kanggo gampang digunakake, sampeyan bisa, mesthi, nemtokake makro iki menyang trabasan keyboard nggunakake tombol macro tab pangembang (Pangembang - Makro).

Lan yen sampeyan pengin ndeleng apa persis sing disalin sawise mbukak makro, sampeyan bisa nguripake panel Clipboard nggunakake panah cilik ing pojok tengen ngisor grup sing cocog ing Utama (Ngarep) tab:

Salin jumlah sel sing dipilih menyang Clipboard

Ora mung jumlah

Yen, saliyane jumlah banal, sampeyan pengin liyane, sampeyan bisa nggunakake fungsi apa wae sing diwenehake obyek kasebut. Fungsi Lembar Kerja:

Salin jumlah sel sing dipilih menyang Clipboard

Contone, ana:

  • Sum – sum
  • Rata-rata - rata-rata aritmetika
  • Count - nomer sel karo nomer
  • CountA - jumlah sel sing diisi
  • CountBlank - jumlah sel kosong
  • Min - nilai minimal
  • Max - nilai maksimum
  • Median - median (nilai tengah)
  • … Lsp.

Kalebu saringan lan kolom baris sing didhelikake

Apa yen larik utawa kolom didhelikake (kanthi manual utawa filter) ing sawetara sing dipilih? Supaya ora njupuk menyang akun ing total, kita kudu rada ngowahi kode kanthi nambahake obyek kasebut. pilihan property Sel Khusus(xlCellTypeVisible):

Sub SumVisible() Yen TypeName(Selection) <> "Range" Banjur Metu Sub With GetObject("Anyar:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText WorksheetFunction.Sum(Selection.SpecialCell)Tx PutInClipboard End Kanthi End Sub  

Ing kasus iki, pitungan fungsi total bakal ditrapake mung ing sel sing katon.

Yen sampeyan butuh rumus urip

Yen ngimpi munggah, sampeyan bisa teka munggah karo skenario nalika iku luwih apik kanggo nyalin ora nomer (pancet), nanging rumus urip menyang buffer, kang ngetung total kita perlu kanggo sel milih. Ing kasus iki, sampeyan kudu nempelake rumus saka pecahan, nambahake mbusak tandha dolar lan ngganti koma (sing digunakake minangka pemisah ing antarane alamat sawetara kisaran sing dipilih ing VBA) kanthi titik koma:

Sub SumFormula () Yen TypeName (Pilihan) <> "Range" Banjur Metu Sub Kanthi GetObject ("Anyar: {1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText "= СУММ (" & Ganti (Ganti (Seleksi). Alamat, ",", ";"), "$", "") & ")" .PutInClipboard End With End Sub  

Summation karo kahanan tambahan

Lan, pungkasane, kanggo maniacs rampung, sampeyan bisa nulis makro sing bakal nyimpulake ora kabeh sel sing dipilih, nanging mung sing nyukupi kahanan sing diwenehake. Dadi, contone, makro bakal katon kaya sing nempatake jumlah sel sing dipilih menyang Buffer, yen nilai luwih saka 5 lan ing wektu sing padha diisi warna apa wae:

 Sub CustomCalc() Dim myRange Minangka Range Yen TypeName(Selection) <> "Range" Banjur Metu Sub Kanggo Saben sel Ing Pilihan Yen cell.Value > 5 Lan cell.Interior.ColorIndex <> xlOra Banjur Yen myRange Ora Ana Apa-apa Banjur Setel myRange = sel Else Set myRange = Union(myRange, cell) End If End Yen Next cell With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText WorksheetFunction.Sum(myRange) .PutInClipboard End With End  

Minangka sampeyan bisa mbayangno kanthi gampang, kahanan bisa disetel pancen apa wae - nganti format sel - lan ing jumlah apa wae (kalebu kanthi ngubungake karo operator logis utawa utawa lan). Ana akeh ruang kanggo imajinasi.

  • Ngonversi rumus dadi nilai (6 cara)
  • Apa macro, carane nggunakake, ngendi kanggo masang kode Visual Basic
  • Informasi migunani ing garis status Microsoft Excel

Ninggalake a Reply