Ушбу линкда 1-дарс булиб утган эди.
Энди эса, тайёр, амалда куп кулланиладиган, Excelни узида йук, лекин керак формулалар учун кодлар мисолини куриб утамиз:
Формулага тушунтириш
Ушбу тайёр кодни кучириб олиш учун тайёр модулни шу жойга куйдим:
https://cloud.mail.ru/public/9GKB/94Z9KoT4f (учиб кетмасдан олдин юклаш керак)
Энди эса, тайёр, амалда куп кулланиладиган, Excelни узида йук, лекин керак формулалар учун кодлар мисолини куриб утамиз:
1.сцепить функциясининг бироз "кулайлаштирилган" тури. Масалан бир неча (15 та, масалан) катакдаги маълумотни орасида вергул билан ёзиб чикиш керак. Унинг учун бизга узун формула ёзишга тугри келади: СЦЕПИТЬ(C2;", ";C3;", ";C4;", ";C5;", ";..... каби.
Шунака пайтда сцепитьдиапазон(C2:C1000;", ") деган формула булса, анча киска ва осонрок булади. Ва вакт хам тежалади.
Шу формулани коди:
Public Function СЦЕПИТЬДИАПАЗОН(ByRef
ДИАПАЗОН
As Excel.Range, Optional ByVal РАЗДЕЛИТЕЛЬ
As String = "") As String
Dim rCell As
Range
Dim
MergeText As String
For Each
rCell In ДИАПАЗОН
If
rCell.Text <> "" Then
MergeText
= MergeText & РАЗДЕЛИТЕЛЬ
& rCell.Text
End If
Next
MergeText =
Mid(MergeText, Len(РАЗДЕЛИТЕЛЬ)
+ 1)
СЦЕПИТЬДИАПАЗОН = MergeText
End
Function
2.Аник бир символни санаш формуласи
Масалан, суздаги пробелларни санаш:
Function СЧЁТСИМВЛ(ТЕКСТ As String, СИМВОЛ As String) As Long
Dim i As Long
Dim S As Long
S = 0
For i = 1 To Len(ТЕКСТ)
If СИМВОЛ = Mid(ТЕКСТ, i, 1) Then S = S + 1
Next
СЧЁТСИМВЛ = S
End Function
3.Катакдаги рангларга кура санаш. Катакларга ранг бериш жадвални укишни, тушунишни осонлаштиради, Баъзан, рангга кура катаклардаги маълумотларни хисоблашга тугри келади.
Excelда бунинг учун стандарт формула йук, ва буни хам тайёр функциядан фойдаланган холда амалга оширамиз:
Формулага тушунтириш
Функция =СУММЗАЛИВКА(ДИАПАЗОН; ЯЧЕЙКА). Функциянинг кисмлари:
- ДИАПАЗОН - суммаси чикарилиши керак булган диапазон.
- ЯЧЕЙКА - маълум (бизга керак) рангга эга катак.
Если вы забыли синтаксис данной функции, вы всегда
сможете вызвать формулу из выпадающего списка функций в надстройке.
Диккат: Формулаларнинг автоматик хисобланиши, катак ранггига Excelда боглик булмаганлиги сабаб, формула ёзилгандан кейинги ранг узгаришларидан сунг, албатта, CTRL+ALT+F9 комбинацияли тугмаларни босиш шарт!
Формуланинг коди:
Public Function СУММЗАЛИВКА(ДИАПАЗОН As Range, ЯЧЕЙКА) As Double
Dim S As Double
Dim rCell As Range
Dim ColCell As Long
ColCell = ЯЧЕЙКА.Interior.Color
S = 0
For Each rCell In ДИАПАЗОН
If rCell.Interior.Color = ColCell Then
S = S + rCell.Value
End If
Next
СУММЗАЛИВКА = S
End Function
4
Катакдаги ёзувнинг рангини аниклаш.
Бу ерда хам Ctrl+Alt+F9 тугмаларини босиш оркали хисоблаш керак булади.
Бу нимага керак? Маълум рангга кура "сортировка" (тартиблаш) учун. Ёки рангни ён устунга ёздириб булгач, "суммеслимн", "счётеслимн" ва хоказо формулалар оркали бошка операцияларни бажариш имконияти булиши учун.
VBA Коди:
Public Function ЦВЕТШРИФТА(ЯЧЕЙКА As Range) As Double
ЦВЕТШРИФТА = ЯЧЕЙКА.Font.Color
End Function
https://cloud.mail.ru/public/9GKB/94Z9KoT4f (учиб кетмасдан олдин юклаш керак)
Комментариев нет:
Отправить комментарий
кабул килинди