Skip to main content

New Article

How to SUM by matching partial text in Excel

IF statement example in Excel VBA

For better understanding the IF statement, here I would like to share an example.


The Problem?

Assume that, You have a sample Bangladesh Mobile Market Share Report of January 2028 like below (I would add here, these information are fake for security purpose).

Image 1: Sample data

Now you need to calculate the market share Percentage (%) both in volume and value and rank them based on Percentage (%). Note that, the Percentage (%) should examine with certain ranges. These are: if above 30%, then "A+", if above 25%, then "A", if above 20%, then "B+", if above 15%, then "B", if above 10%, "C+", if above 5%, then "C" if less than 5%, then "D" and Background color will also changed based on Grade achievement.

You can easily do it in Simple Excel. But here I would like to do it in Excel VBA.


The Solution:

First of all make a checklist about what we have to do:
1. Table designing
2. Market Share calculation
3. Grading the market share % and change Background Color


1. Table Designing:

I'v designed the table as below:

Image 1: Table design


2. Market Share Calculation:

To calculate the Market Share use the below codes for Vol Share % and Val Share %:


Option Explicit

Sub mobile_analyze()
  Dim x As Long
  Dim y As Double
  Dim z As Integer
  For z = 7 To 15
     'Volume share % calculation
      y = Cells(z, 3) / Cells(15, 3)
      Cells(z, 4).Value = y
      Cells(z, 4).NumberFormat = "#,##0.00%"
    
      'Value share % calculation
       y = Cells(z, 6) / Cells(15, 6)
       Cells(z, 7).Value = y
       Cells(z, 7).NumberFormat = "#,##0.00%"
   Next z
End Sub



3. Grading the market share % and change Background Color:

To calculate the Grade, you need to use IF statement. And under each IF statement change the background color like below final code:


Option Explicit
   Sub mobile_analyze()
      Dim x As Long
      Dim y As Double
      Dim z As Integer

      For z = 7 To 15
 
        'Volume share % calculation
         y = Cells(z, 3) / Cells(15, 3)
         Cells(z, 4).Value = y
         Cells(z, 4).NumberFormat = "#,##0.00%"

        'Value share % calculation
         y = Cells(z, 6) / Cells(15, 6)
         Cells(z, 7).Value = y
         Cells(z, 7).NumberFormat = "#,##0.00%"

        'Volume Grade Calculation
         If Cells(z, 4) = 1 Then
            Cells(z, 5).Value = ""
         ElseIf Cells(z, 4) >= 0.3 Then
            Cells(z, 5).Value = "A+"
            Cells(z, 5).Interior.Color = RGB(230, 101, 234)
         ElseIf Cells(z, 4) >= 0.25 Then
            Cells(z, 5).Value = "A"
            Cells(z, 5).Interior.Color = RGB(230, 141, 234)
         ElseIf Cells(z, 4) >= 0.2 Then
            Cells(z, 5).Value = "B+"
            Cells(z, 5).Interior.Color = RGB(230, 157, 234)
         ElseIf Cells(z, 4) >= 0.15 Then
            Cells(z, 5).Value = "B"
            Cells(z, 5).Interior.Color = RGB(230, 175, 234)
         ElseIf Cells(z, 4) >= 0.1 Then
            Cells(z, 5).Value = "C+"
            Cells(z, 5).Interior.Color = RGB(230, 199, 234)
         ElseIf Cells(z, 4) < 0.1 Then
            Cells(z, 5).Value = "D"
            Cells(z, 5).Interior.Color = RGB(230, 218, 234)
         End If

         'Value Grade Calculation
         If Cells(z, 7) = 1 Then
            Cells(z, 8).Value = ""
         ElseIf Cells(z, 7) >= 0.3 Then
            Cells(z, 8).Value = "A+"
            Cells(z, 8).Interior.Color = RGB(11, 232, 250)
         ElseIf Cells(z, 7) >= 0.25 Then
            Cells(z, 8).Value = "A"
            Cells(z, 8).Interior.Color = RGB(71, 232, 250)
         ElseIf Cells(z, 7) >= 0.2 Then
            Cells(z, 8).Value = "B+"
            Cells(z, 8).Interior.Color = RGB(177, 232, 250)
         ElseIf Cells(z, 7) >= 0.15 Then
            Cells(z, 8).Value = "B"
            Cells(z, 8).Interior.Color = RGB(193, 232, 250)
         ElseIf Cells(z, 7) >= 0.1 Then
            Cells(z, 8).Value = "C+"
            Cells(z, 8).Interior.Color = RGB(217, 232, 250)
         ElseIf Cells(z, 7) < 0.1 Then
            Cells(z, 8).Value = "D"
            Cells(z, 8).Interior.Color = RGB(236, 232, 250)
         End If
      Next z
   End Sub



The Result:

After entering the above final code into the Module, press F5 or Click on Play to run it. The result will display as below:

Image 3: Result


|||| Please SUBSCRIBE our YouTube Channel ||||
https://www.youtube.com/channel/UCIWaA5KCwZzBGwtmGIOFjQw

Popular posts from this blog

How to display an image in worksheet based on a List or based on IF condition?

Excel can show image on worksheet based on a specific IF condition. So, how to do it? Simple follow the below steps: Step by Step: Step 1: Insert images in your Excel Worksheet. Here I've inserted 5 different types of balls, Football, Cricket, Pool, Basketball, Tennis ball. Note that, All balls are placed into different cell. These are placed in Picture sheet. Image 1: 5 balls placed in 5 different cells and covered photo's wide and height Step 2: In the report sheet, design the report as you wish. I've designed in my way like below: Image 2: Kids asking to Donald Duck, which ball need to throw now Step 3: Make a drop down list "Games" in E6 cell in Report sheet from Data Validation. which is as below: Football Cricket Pool Basketball Tennis You can do an IF function here in E6 in Report sheet, which will meet a certain condition and returned Football, Cricket, Pool, Basketball or Tennis. Step 4: Now the tricky part is

Fiverr Microsoft Excel 2016 Skill Test and Answers 2021

This video will help you about preparing Fiverr Excel Skill Test. I've just taken this Fiverr Excel Skill Test and successfully passed with a scored 6 out of 10. I'm sharing my Fiverr Excel Skill Test and Answers 2021 video so that you can prepare yourself if you would like to give a test on Fiverr.    I have taken the Fiverr Excel Skill Test on Fiverr and obtained 6 out of 10 scores. If you take a test and pass, it will greatly help the buyer to trust you and your skills. Please note that your exam will not be exactly the same as mine because there are many more questions in the pool than 40 which appeared in my test. But I am hopeful that you will succeed in it. If you have any queries, please write them in the comment section. I will try my best to guide you.Follow this video and try to get a general idea. By following the instructions, you can successfully pass the test.    After passing the Fiverr Excel Skill Test, Fiverr shared a Excel Expert Badge on my Profile, so that

Cumulative Closing Balance like a Bank Statement in PivotTable

A Bank Employee in many case needs to calculate the Closing Balance after each transaction in PivotTable like a Bank Statement . But with the help of Calculated Field of a PivotTable , you can only calculate Field with Field . It's not possible to use a formula in Calculated Field where you can mention a single cell with Relative Reference Cell . Because a PivotTable acts like a Table format where you can work with Field or Column Name . A Helping Column (A regular column, that helps to get a partial result where formula applied) can be a good idea. But there is an option in PivotTable by which you can Calculate Cumulative . In this article I will show you, how you can do it. Calculating with Formula: Assume that, you have an Excel file with Debit and Credit transaction of an Account . Image 1: Sample Bank Statement In a Bank Statement , Month wise Cumulative Balance is important. In the Excel sheet, as above, it is very easy to use a formula and calc