This project is for the creation of a macro script that will tally our previous day’s revenues across several ad networks, and output it into a spreadsheet. The output could be in a Google Apps’ spreadsheet if you are using browser-based macros (ie. iMacro), which we can then copy/paste into Microsoft Excel daily. That’s not a problem.
- The macro needs to be flexible and easy to change, so we can easily add/remove ad networks.
- Several networks may use the same platform (for example Appnexus). So in this case, we shouldn’t need to re-record the steps for the macro again. In the spreadsheet, we should be able to specify the platform, and the macro script should load the appropriate script accordingly.
- Ideally, the macro should rely on the login credentials stored in Firefox to login so that the spreadsheet does not contain any privilege information. This is easy to implement since when the username provided for each network is input into the login screen, Firefox can automatically populate the password from the locally stored credentials.
- The macro should “wait” for the revenue to load. For example, after running yesterday’s report, the reporting interface may say something like “Loading…” while the revenue is being calculated. Only after the revenue is displayed would the macro copy/paste that information into an Excel. If the revenue is not displayed as expected after X minutes (ie. 1 minute), it would timeout, write “ERROR” where it would usually paste the revenue information, and move on to the next network.
- Here is what the sample spreadsheet will look like: [url removed, login to view]
- The “revenue” information is to be extracted from each ad network and populated into the spreadsheet daily (could be a Google Apps spreadsheet or Microsoft Excel)
- In this example, there is a custom macro script for Adsense, Vibrant and ValueClick (“MacroScript” column)
- For Adconion, Burst and CPX – who are using Appnexus, there is a single macro script (although the domains may be different)
- When the username is entered into Firefox, since the login credentials are saved in the browser, it will populate the password automatically. Where Firefox struggles to populate the password, the spreadsheet would list it and the macro should be able to copy/paste it into the website (as in the ValueClick example)
- After logging into each ad network’s website, and selecting the fields to load yesterday’s revenues, it will wait for the revenue figure to be loaded before copying/pasting it into the spreadsheet (ignoring things like “Loading…”) < [this is what I struggled with; the rest of the project should be easy!]
- If the revenue figure is not loaded after X minutes (ie. 1 minute), the appropriate revenue column for the network would be populated with “ERROR” for manual review
- After each revenue figure is populated or timed out, the macro continues to the next network in the spreadsheet (ie. Adsense, then Vibrant, then ValueClick) – until it hits the end of the spreadsheet and then finishes
- The revenue column should be a standard format – so ignore things like the “$” sign, have 2 decimal places, etc.
For anyone familiar with macros, this should be a relatively easy project. I’m not too experienced with macros, and I can achieve most of the above myself. The part I struggle with is getting the macro to ignore the “Loading…” part before extracting yesterday’s revenue figure after it loads.
Please post your bid, and if you feel the project should be below/above the stated range, feel free to bid accordingly. Also note that part of the project is explaining to me how I can record new macros for additional networks and have it input the previous day’s revenue into the spreadsheet.
17 freelancers are bidding on average $478 for this job
I have several years of experience writing excel macros as a mechanical engineer, and would like the opportunity to kickstart my freelancer career with your project.
Hi cencina, i have 2+ years experience in working on VBA,EXCEL in one of the major telecom company , i can deliver u r project in time. consider my request