Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wrighang/02_vba-challenge
Module 2: VBA
https://github.com/wrighang/02_vba-challenge
for-loop vba-macros vba-script
Last synced: 4 days ago
JSON representation
Module 2: VBA
- Host: GitHub
- URL: https://github.com/wrighang/02_vba-challenge
- Owner: wrighang
- Created: 2024-09-24T19:09:02.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-01-03T23:30:39.000Z (24 days ago)
- Last Synced: 2025-01-04T00:23:22.483Z (24 days ago)
- Topics: for-loop, vba-macros, vba-script
- Language: Visual Basic .NET
- Homepage:
- Size: 17.2 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 02_VBA-challenge
# Deliverable(s)
1. [Screenshots of the results](https://github.com/wrighang/02_VBA-challenge/tree/main/results%20images)
2. [Separate VBA script files](https://github.com/wrighang/02_VBA-challenge/tree/main/vba%20script%20files)
3. [README file](https://github.com/wrighang/02_VBA-challenge/blob/main/README.md)
4. [EXTRA - xlsm file](https://github.com/wrighang/02_VBA-challenge/blob/main/Multiple_year_stock_data_Angelina.xlsm)## Instructions
Create a script that loops through all the stocks for each quarter and outputs the following information:- The ticker symbol
- Quarterly change from the opening price at the beginning of a given quarter to the closing price at the end of that quarter
- The percentage change from the opening price at the beginning of a given quarter to the closing price at the end of that quarter
- The total stock volume of the stock
- Add functionality to your script to return the stock with the "Greatest % increase", "Greatest % decrease", and "Greatest total volume".
- Make the appropriate adjustments to your VBA script to enable it to run on every worksheet (that is, every quarter) at once.## Requirements
### Retrieval of Data
The script loops through one quarter of stock data and reads/stores all of the following values from each row:
- Ticker symbol
- Volume of stock
- Open price
- Close price### Column Creation
On the same worksheet as the raw data, or on a new worksheet, all columns were correctly created for:
- Ticker symbol
- Total stock volume
- Quarterly change ($)
- Percent change### Conditional Formatting
Conditional formatting is applied correctly and appropriately to:
- Quarterly change column
- Percent change column### Calculated Values
All three of the following values are calculated correctly and displayed in the output:
- Greatest % Increase
- Greatest % Decrease
- Greatest Total Volume### Looping Across Worksheet
The VBA script can run on all sheets successfully.### GitHub/GitLab Submission
All three of the following are uploaded to GitHub/GitLab:
- Screenshots of the results
- Separate VBA script files
- README file==================================================================================
## CODING_PROCESSReset Button- Andrew Lane provided this code in a study group we had with several classmates over the weekend and I used it after I had completed the assignment as it was very helpful to reset using a macro versus manually deleting the results
Greatest% Increase/Greatest Decrease- I researched how to write a code that would look up the maximum and minimum values. Initially, I struggled with the formula for calculating the greatest total volume and reached out to Andrew for advice, assuming the issue was related to the min/max formula and worked on that for awhile which you can see in my code the various attemps i was making with the max code for the volume. However, it turned out that the problem was with how I was resetting the volume for the total stock volume calculation. I had originally placed the volume = 0 reset after the loop, but while adjusting things to test different outputs, I mistakenly moved it before the loop without realizing how this affected the results. I didn’t notice the incorrect output until much later.
Message Box- Since the code takes some time to run, I added a message box at the end to display a notification when the code has finished running.