SlideShare ist ein Scribd-Unternehmen logo
1 von 62
Downloaden Sie, um offline zu lesen
Automating With Excel:An Object-Oriented Approach,[object Object],Paul Gimbel,[object Object],Razorleaf Corporation,[object Object]
OK, Fine. Here’s What We’ll Do,[object Object],Obligatory Introductions,[object Object],Overview – Automation: Why? How Much? Who?,[object Object],Background For Our Example,[object Object],Automation Choices,[object Object],Excel Can Do That?,[object Object],Gimme a V! Gimme a B! Gimme an A!,[object Object],Commercially Available Solutions,[object Object],How To Choose a Design Automation Strategy,[object Object],Questions and (if you’re lucky) Answers,[object Object]
Not Sure If You Should Stay Here or Go See Lisa and Tammy’s “Migrating to ePDM”?,[object Object],I’ve got:,[object Object],Free Code!!!,[object Object],New ways of approaching automation with the same tools,[object Object],What can you do with SolidWorks?,[object Object],What can you do with SolidWorks and Excel?,[object Object],What can you do with SolidWorks, Excel and VBA?,[object Object],What can you do if you have money?,[object Object],And the overriding theme of What Is OOP (and how will it save me 15% or more on my car insurance),[object Object],(Lisa and Tammy are showing case studies of migrating data into ePDM without the use of custom code down in 201 A-B.),[object Object]
DISCLAIMER!!!     More Information Than Time,[object Object],There is so much that you can do with this stuff!!,[object Object],Liz wouldn’t give me a 14 hour session,[object Object],I may have to talk faster than the guy at the end of a car commercial,[object Object],Everything is documented in the PowerPoint,[object Object],Download it from the SolidWorks World Site (eventually),[object Object],Download it from the Razorleaf Site (www.razorleaf.com),[object Object],Give me a business card and I’ll email it to you (the ppt, not your card),[object Object],Read the Presenter Notes!!,[object Object],Come on up after the session with any questions,[object Object],Follow me around the hallways until you can stop me,[object Object],Take my business card...take a few and hand them around,[object Object]
Who Is This Guy and Where Did He Come From?,[object Object],Razorleaf Corporation,[object Object],SolidWorks Service Partner,[object Object],Services ONLY (we’re not trying to sell you anything, we’re neutral),[object Object],Data Management (EPDM, SmarTeam, Aras),[object Object],Design Automation (DriveWorks, Tacton),[object Object],Workflow Automation (Microsoft SharePoint and Tools),[object Object],Paul Gimbel (aka “The Sherpa”),[object Object],10+ years as Demo Jock, Applications Engineer, Trainer, Support Tech,[object Object],5 years as Design Automation Implementer,[object Object],Specializing in SolidWorks, DriveWorks, Tacton, Custom Programming,[object Object],(THERE! Now I can report this trip as reimbursable.),[object Object],The ,[object Object],Sherpa,[object Object]
Where To Start,[object Object],“It’s All About The Process” – The Sherpa,[object Object],The most important thing to understand is the design process,[object Object],Immediately followed by the notion that it might change,[object Object],Map out your current process,[object Object],AS IT IS PERFORMED! Not how the ISO document says it should be performed.,[object Object],Ask around to the people that actually do the work,[object Object],Understand and prioritize your goals,[object Object],Time to market? Customizability? Standardization? Just lazy?,[object Object],Plan your vision – What will life look like?,[object Object]
Yup. This Slide AGAIN,[object Object],Process,[object Object],Technology,[object Object],From “Technology Induced Change And The Line Manager”, Dr. Eliot Levinson,[object Object],7,[object Object]
“It’s All About The Process”,[object Object],Don’t just write a macro to push the same buttons, think bigger!,[object Object],Re-evaluate what SolidWorks can really do for you,[object Object],See the two previous (hidden) slides,[object Object],Download the presentation and open it in PowerPoint,[object Object],See some of my previous SolidWorks World presentations (www.razorleaf.com),[object Object],Redesigning Processes for SolidWorks – SWW 2006,[object Object],Lets Get Ready To Automate – SWW 2007,[object Object],Automating Your Designs – SWW 2008,[object Object],Using SolidWorks and API to Drive Complex Calculations – SWW 2009,[object Object],Demystifying the SolidWorks API – SWW 2010,[object Object],Automating Design Validation with the SolidWorks API – SWW 2010,[object Object]
Reality Check,[object Object],A couple automation realities you should know about:,[object Object],100% automation is generally unachievable,[object Object],Typically, the last 10% of automation will not be worth it,[object Object],Customers will always request something you didn’t plan for,[object Object],Your drawings are probably going to require clean-up,[object Object],People will fight your efforts,[object Object],Your end users will be even stupider than you imagined,[object Object],Testing will take you far longer than you expect,[object Object],Your system will require ongoing maintenance and updates,[object Object]
Your Options,[object Object],Pure SolidWorks functionality,[object Object],SolidWorks Macros,[object Object],Microsoft Excel (and some VBA, of course),[object Object],Maximized use of Excel and VBA,[object Object],Custom developed application,[object Object],Commercially available solution partner product,[object Object],AutoDesk Inven…nah, who are we kidding.,[object Object]
Pure SolidWorks,[object Object],Configurations,[object Object],Design Tables,[object Object],Sensors,[object Object],Equations,[object Object],Smart Components,[object Object],Mate References,[object Object],Design Checker,[object Object],SolidWorks Task Scheduler,[object Object],DriveWorksXpress,[object Object],FeatureWorks,[object Object]
What Do You Mean SolidWorks Has Limitations!?!?,[object Object],All of these functions require interaction with the user,[object Object],SolidWorks is required ,[object Object],Great for your reseller, not so great for your budget,[object Object],Puts non-engineers in an uncomfortable environment,[object Object],Requires at least some SolidWorks training,[object Object],Do you really want a salesperson opening your models!?!?,[object Object],Data management issues,[object Object],One file with tons of configurations?,[object Object],How big is that file, eh?,[object Object],Multiple people can’t edit one file,[object Object],Revision questions,[object Object],Save As Copy every time?,[object Object],What about updates?,[object Object]
SolidWorks Macros,[object Object],Designed to drive the SolidWorks User Interface,[object Object],Not all that automation-friendly,[object Object],OK to use for small functions,[object Object],Can be tough to share due to peoples individual settings,[object Object],Often requires specific pre-selections,[object Object],Everything plays on the screen (video performance aspect),[object Object]
The Road To Excel,[object Object],Design Tables alone don’t address,[object Object],User Interface (Configuration Manager, to a small extent),[object Object],Input values as opposed to output values,[object Object],Advanced Excel functionality ,[object Object],Leverage Excel,[object Object],Use Excel User Interface tools,[object Object],Data validation,[object Object],User Defined Functions,[object Object],Macros,[object Object],Add-Ins (Analysis Pack, Solver, etc.),[object Object]
Excel and SolidWorks – So Happy Together,[object Object],Three Methods To Integrate SolidWorks and Excel,[object Object],Design Table,[object Object],Embedded in the SolidWorks model,[object Object],Must edit through SolidWorks,[object Object],Edit Table In New Window to gain access to Excel,[object Object],MUST BE IN THE DESIGN TABLE SHEET WHEN YOU EXIT!!,[object Object],External Spreadsheet with Macro to drive SolidWorks,[object Object],Requires SolidWorks API programming,[object Object],Separates workbook from SolidWorks model,[object Object],Does not require SolidWorks (until macro is run),[object Object],Shareable (through Excel Share Workbook functionality),[object Object],Can be used to drive multiple SolidWorks files,[object Object],Can be used to drive other things as well, not just SW,[object Object],Spreadsheet with Macro Inserted as OLE Object,[object Object]
What Excel Brings To The Party (a six pack?),[object Object],Formatting,[object Object],Charts,[object Object],Easy User Interfaces,[object Object],Advanced equation functionality,[object Object],VBA,[object Object],Custom functions,[object Object],Macros,[object Object],Object-Oriented Programming (well, sort of),[object Object]
Just A Little Bit Of Work Makes A Huge Difference,[object Object],Some People’s Idea of an Excel User Interface,[object Object],Less Than Twenty Minutes Of Work,[object Object]
Building User Interfaces in Excel,[object Object],[object Object]
Lists, error and warning dialogs, tool tipsIn-Cell Dropdowns,[object Object],Input Messages,[object Object],Error Messages,[object Object],Warning Messages,[object Object]
Building User Interfaces in Excel,[object Object],[object Object]
Control user’s attention based on input
Data Validation
Lists, error and warning dialogs, tool tips,[object Object]
Lists, error and warning dialogs, tool tips
Conditional Formatting
Control user’s attention based on input
Tools, Protection
Unlock/show only cells you want them to be able to change,[object Object]
Lists, error and warning dialogs, tool tips
Conditional Formatting
Control user’s attention based on input
Tools, Protection
Unlock/show only cells you want them to be able to change
Control Toolbox
VB-Style input device that can fill in your cells,[object Object]
Lists, error and warning dialogs, tool tips
Conditional Formatting
Control user’s attention based on input
Tools, Protection
Unlock/show only cells you want them to be able to changeControl Toolbox,[object Object],VB-style input devices that can fill in your cells,[object Object],[object Object]
Help users understand what information they need to input,[object Object]
Calculations in Excel,[object Object],Name Your Cells and Ranges,[object Object],Just as in SolidWorks, it makes equations easier to read,[object Object],Add Comments,[object Object],In adjoining cells or with the comment tool,[object Object],Keep your formulas simple whenever possible,[object Object],Multiple calculation steps are easier to troubleshoot,[object Object],Intelligent Layouts,[object Object],Don’t scatter stuff all over the place,[object Object],Consider cells that may need to be adjacent for lookups, etc.,[object Object],Give this collection of cells a single name,[object Object]
2.9,[object Object],Searches until it finds a value that is “greater than” the search value, then goes back to take the previous one.,[object Object],Working with Ranges in Excel,[object Object],Index: Return the value at row n, column m,[object Object],Match: Which row is this value in?,[object Object],Specify which order values are in (asc/desc) or exact matches,[object Object],Combine with Index to do a lookup on any column,[object Object],VLookup/HLookup: Find value in first column/row,[object Object],RangeLookup = FALSE: “No, I only want exact matches”,[object Object],RangeLookup = TRUE: “Yes, find me the closest match”,[object Object],VLookup(110,VoltageRange,2,FALSE) =,[object Object],1.73,[object Object],VLookup(290,VoltageRange,2,FALSE) =,[object Object],N/A#,[object Object],VLookup(359,VoltageRange,2,TRUE) =,[object Object],25,[object Object]
Dealing With Unknown Quantities,[object Object],Count: How many numbers are in the range?,[object Object],CountA: How many non-blank cells are in the range?,[object Object],Columns/Rows: How many columns/rows are in the range?,[object Object],DGet: Return any value in a range based on criteria,[object Object],Range “Holes”,[object Object],DGet(Holes,”Dia”,Criteria1) =,[object Object],0.250,[object Object],DGet(Holes,”Number”,Criteria2) =,[object Object],2,[object Object],DGet(Holes,”Number”,Criteria3) =,[object Object],#NUM!,[object Object],DGet(Holes,”Dia”,Criteria4) =,[object Object],#VALUE!,[object Object],Criteria1Criteria2            Criteria3   Criteria 4,[object Object],26,[object Object]
More Cool Excel Functions,[object Object],Indirect: Display range/cell based on a formula,[object Object],Ceiling/Floor: Rounds up/down to the next multiple,[object Object],SumIf: Totals all of the values in a range that meet a criteria,[object Object],=SumIf(ThicknessRange,”>0.25”,PriceRange),[object Object],DSum: Add values from records that meet a criteria,[object Object],Error Trapping:,[object Object],IsErr,[object Object],IsError,[object Object],Error.Type,[object Object],IsNA,[object Object],IsBlank,[object Object],[object Object]
IsNumber
IsText
IsNonText
Type27,[object Object]
What Excel Brings To The Party (a six pack?),[object Object],Formatting,[object Object],Charts,[object Object],Design Binder,[object Object],Easy User Interfaces,[object Object],Advanced equation functionality,[object Object],VBA,[object Object],Custom functions,[object Object],Macros,[object Object],Object-Oriented Programming (well, sort of),[object Object],28,[object Object]
OK, Enough Easy Stuff…On To The VBA,[object Object],Use VBA to AUGMENT Excel,[object Object],Custom functions,[object Object],Macros,[object Object],Connections to other programs (like SolidWorks),[object Object],Do As Much As You Can In Excel,[object Object],Easier to troubleshoot,[object Object],Easier to maintain,[object Object],Faster to develop,[object Object],29,[object Object]
Custom Functions – Repetitive Calculations,[object Object],Tired of typing in the same equations?,[object Object],PublicFunctionCylVolume(Radius AsDouble, Height AsDouble) AsDouble,[object Object],Dim Pi AsDouble,[object Object],Pi = 4 * Atn(1)			       ‘ArcTangent of 1 = pi/4…I think,[object Object],CylVolume = Pi * Radius * Raidus * Height,[object Object],EndFunction,[object Object],Now you can just use:,[object Object],= CylVolume(Radius, Height) ,[object Object],	or ,[object Object],=CylVolume($B$4, C5) ,[object Object],	(if you haven’t been paying attention and you don’t know that you’re supposed to name your cell ranges),[object Object],30,[object Object]
Custom Functions – Fill in Excel Gaps,[object Object],Excel missing a function you want? No problem!,[object Object],PublicFunction Divisible(Value AsDouble, Divisor AsDouble) AsBoolean,[object Object],Dim Compare AsInteger,[object Object],Compare = CInt(Value / Divisor),[object Object],If Compare = (Value / Divisor) Then,[object Object],	Divisible = True,[object Object],Else,[object Object],	Divisible = False,[object Object],EndIf,[object Object],EndFunction,[object Object],Now all I do is put THIS in my cell:,[object Object],=If(Divisible(Length,StdSpacing),Length / StdSpacing,0),[object Object],Note: Because we’re converting a Double to an Integer, this only works for numbers up to 32767. This was not an issue in my application as the model only supported up to 48”. But you may want to put a check in there so you don’t get overflow errors.,[object Object],31,[object Object]
Custom Functions - Conversions,[object Object],What about converting units or data types? (or both!),[object Object],Public Function FeetInches(TotalInchesAsDouble) AsString,[object Object],Dim Feet AsInteger,[object Object],Dim Inches AsDouble,[object Object],Feet = Application.WorksheetFunction.RoundDown(TotalInches / 12,0),[object Object],FeetInches = Feet & “’ “,[object Object],Inches = (TotalInches – (Feet * 12)),[object Object],If Inches > 0 Then,[object Object],FeetInches = FeetInches & “- “ & Inches & chr(34)   ’(34 is ASCII for “),[object Object],EndIf,[object Object],EndFunction,[object Object],Now you can use the equation:,[object Object],=“LENGTH = “ & FeetInches(Length),[object Object],To get:,[object Object],LENGTH = 4’ – 6.125”,[object Object],The example in your handout actually picks up on increments of 1/32”,[object Object],32,[object Object]
Custom Functions - Handling Sets of Data,[object Object],Excel Cannot Really Handle Arrays Of Data,[object Object],It can do ranges, but ranges need a known number of cells,[object Object],Paul’s Solution:,[object Object],Store lists of values in a single cell (ex. “1.25|17|21.1375|9”),[object Object],Create a series of functions to manipulate these lists,[object Object],ListQty – How many entities are in the list?,[object Object],GetListValue – Give me the nth member of the list.,[object Object],FindValueInList – Is this value in the list? Where?,[object Object],SortList, FlipList, InsertIntoList – Control the order,[object Object],RangeToList – Convert a range of cells into a list,[object Object],Don’t like the pipe (|) character? ,[object Object],Just change it to whatever you like in the SPLIT/JOIN commands.,[object Object],33,[object Object]
How To Program In VBA,[object Object],The Ultimate Process For Non-Programmers:,[object Object],Determine what you want your program/code snippet to do,[object Object],Think of some “keywords” to describe it (if you know the functions you need to use, you’re ahead of the game),[object Object],http://www.google.com (add “VBA” and/or “Excel” to search),[object Object],Ctrl-C,[object Object],Ctrl-V,[object Object],Tweak,[object Object],Also check out,[object Object],www.krugle.org,[object Object],Also look to Excel VBA and SW API Help files. ,[object Object],They’re actually helpful.  I know! I was shocked, too.,[object Object],34,[object Object]
Programming Tips For Excel,[object Object],DOCUMENT THE $#^@ OUT OF EVERYTHING!!!,[object Object],Anything after an apostrophe (‘) is a comment…use them!!,[object Object],Option Explicit,[object Object],It’s the “Require Fully Defined Sketches” of the VBA world,[object Object],Intellisense…good. Typing…bad.,[object Object],If you don’t see the option that you need, something’s wrong.,[object Object],Compile and Test Often,[object Object],Programmatic sanity checks,[object Object],Insert Test Code,[object Object],Use Debug Tools,[object Object],Step Into, Step Over, Watches, Breakpoints,[object Object],35,[object Object]
The Object Browser,[object Object],36,[object Object]
Getting Around In Excel With VBA,[object Object],To access a named cell (you named them all, right!!?!?),[object Object],Thickness = Worksheets(“Calcs”).Range(“TestCell”).Value,[object Object],Running through the cells in a named range,[object Object],Dim MyCell As Excel.Range ‘Even a single cell is treated as a range,[object Object],For Each MyCell in Worksheets(“Calcs”).Range(“TestRange”),[object Object],	Total = Total + MyCell.Value,[object Object],Next MyCell ‘Looping through the TestRange,[object Object],What if you have rows (i.e. a multi-column range)?,[object Object],Dim MyRow As Excel.Range	‘We’re going to cycle through the rows,[object Object],For Each MyRow in Worksheets(“Calcs”).Range(“TestRange”).Rows,[object Object],	Total = Total + MyRow.Cells(1,3).Value ‘Row 1, Column 3 of the range,[object Object],Next MyRow ‘Looping through the TestRange,[object Object],37,[object Object]
Absolute Row and Column References,[object Object],Can I just put in Row and Column references, like:,[object Object],Thickness = Worksheets(“Sheet1”).Range(“A1:A1”).Value,[object Object],Thickness = Worksheets(“Sheet1”).Cells(4,9).Value,[object Object],Sure, but I would have to slap you silly,[object Object],Readability…Minus 10 style points,[object Object],What if the range moves…Minus 10 style points,[object Object],Debugging…Minus 10 style points,[object Object],Scalability…Minus 10 style points,[object Object],Portability…Minus 10 style points,[object Object],Chances of anyone else understanding your code…Minus 30!,[object Object],38,[object Object]
Object-Oriented Programming**,[object Object],“Everything you need to do in the SolidWorks API has to be done by or to an object.”,[object Object],Class – A definition (blueprint) of something (think: blank spec for a washer or bolt),[object Object],Interface – A more generic definition incorporating multiple classes (ex. Hardware),[object Object],Object – A specific instance of a class (completed spec - ex. 1/4-20 x 3 SHCS),[object Object],Property – A parameter value that an object has (ex. Diameter),[object Object],Method – Something (sub or function) that an object can do (ex. Install),[object Object],Accessor – A method used to get an object (ex. GetFeature, GetChildren),[object Object],Dot(.) –Separates an object from its property or method or “child” objects,[object Object],Ex. Bolt.Length or Bolt.Thread.item(“Lead”).Pitch,[object Object],Instantiate – To make a real thing as defined by a class,[object Object],Ex. Upper Flange Bolt #3 or Rear Axle Nut,[object Object],Those are then called “instances” and “objects”,[object Object],**To appease any true code junkies out there. VBA doesn’t REALLY support full OOP with inheritance and polymorphism, but this is a DEMYSTIFYING session. I don’t want to MYSTIFY this stuff any more than it is.,[object Object]
The SolidWorks API Object Example (VBA),[object Object],Early Bound Object Declarations aka “Fully Qualified” (+5 Style Points),[object Object],Object assignment (instantiation) requires the keyword Set in VBA only,[object Object],HoleDepth and HoleDiameter are Properties,[object Object],of the WizardHoleFeatureData2 object,[object Object],Example: Creating a Hole Wizard Hole,[object Object],Dim swApp As SldWorks.SldWorks,[object Object],Dim swModel As SldWorks.ModelDoc2,[object Object],Dim swFeatMgr As SldWorks.FeatureManager,[object Object],Dim swFeat As SldWorks.Feature,[object Object],Dim swWzdHole As WizardHoleFeatureData2,[object Object],Set swApp = Application.SldWorks,[object Object],Set swModel = swApp.ActiveDoc,[object Object],Set swFeatMgr = swModel.FeatureManager,[object Object],…more code here…,[object Object],Set swWzdHole = swFeatMgr.CreateDefinition(swFmHoleWzd),[object Object],swWzdHole.HoleDepth = 0.15,[object Object],swWzdHole.HoleDiameter = 0.0555,[object Object],…,[object Object],Set swFeat = swFeatMgr.CreateFeature(swWzdHole),[object Object],…more code here…,[object Object],CreateDefinition and CreateFeature are Methods (functions),[object Object]

Weitere ähnliche Inhalte

Ähnlich wie Automating With Excel An Object Oriented Approach

Sww 2008 Automating Your Designs Excel, Vba And Beyond
Sww 2008   Automating Your Designs   Excel, Vba And BeyondSww 2008   Automating Your Designs   Excel, Vba And Beyond
Sww 2008 Automating Your Designs Excel, Vba And BeyondRazorleaf Corporation
 
Automation Of Reporting And Alerting
Automation Of Reporting And AlertingAutomation Of Reporting And Alerting
Automation Of Reporting And AlertingSean Durocher
 
Data Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLData Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLPaco Nathan
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningPaco Nathan
 
No more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and AzureNo more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and AzureMarco Parenzan
 
Data Workflows for Machine Learning - SF Bay Area ML
Data Workflows for Machine Learning - SF Bay Area MLData Workflows for Machine Learning - SF Bay Area ML
Data Workflows for Machine Learning - SF Bay Area MLPaco Nathan
 
Data Science for non techies using KNIME 08 Weeks Training
Data Science for non techies using KNIME 08 Weeks TrainingData Science for non techies using KNIME 08 Weeks Training
Data Science for non techies using KNIME 08 Weeks TrainingAli Raza Anjum
 
Domain oriented development
Domain oriented developmentDomain oriented development
Domain oriented developmentrajmundr
 
Getting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and DataGetting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and DataCory Foy
 
User Driven Software Architecture
User Driven Software ArchitectureUser Driven Software Architecture
User Driven Software ArchitectureSimon Guest
 
...and thus your forms automagically disappeared
...and thus your forms automagically disappeared...and thus your forms automagically disappeared
...and thus your forms automagically disappearedLuc Bors
 
Access tips access and sql part 4 building select queries on-the-fly
Access tips  access and sql part 4  building select queries on-the-flyAccess tips  access and sql part 4  building select queries on-the-fly
Access tips access and sql part 4 building select queries on-the-flyquest2900
 
Software fundamentals
Software fundamentalsSoftware fundamentals
Software fundamentalsSusan Winters
 
Top10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin ToolsTop10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin Toolsdebm_madronasg
 
Interface Usability - Adding Schweppervescence
Interface Usability - Adding SchweppervescenceInterface Usability - Adding Schweppervescence
Interface Usability - Adding SchweppervescenceSSW
 
Brochure data science learning path board-infinity (1)
Brochure   data science learning path board-infinity (1)Brochure   data science learning path board-infinity (1)
Brochure data science learning path board-infinity (1)NirupamNishant2
 
Tableau Online Training in canada
Tableau Online Training in canadaTableau Online Training in canada
Tableau Online Training in canadaBoundTechS
 

Ähnlich wie Automating With Excel An Object Oriented Approach (20)

Sww 2008 Automating Your Designs Excel, Vba And Beyond
Sww 2008   Automating Your Designs   Excel, Vba And BeyondSww 2008   Automating Your Designs   Excel, Vba And Beyond
Sww 2008 Automating Your Designs Excel, Vba And Beyond
 
Automation Of Reporting And Alerting
Automation Of Reporting And AlertingAutomation Of Reporting And Alerting
Automation Of Reporting And Alerting
 
Data Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLData Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAML
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine Learning
 
No more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and AzureNo more Three Tier - A path to a better code for Cloud and Azure
No more Three Tier - A path to a better code for Cloud and Azure
 
Data Workflows for Machine Learning - SF Bay Area ML
Data Workflows for Machine Learning - SF Bay Area MLData Workflows for Machine Learning - SF Bay Area ML
Data Workflows for Machine Learning - SF Bay Area ML
 
Data Science for non techies using KNIME 08 Weeks Training
Data Science for non techies using KNIME 08 Weeks TrainingData Science for non techies using KNIME 08 Weeks Training
Data Science for non techies using KNIME 08 Weeks Training
 
Domain oriented development
Domain oriented developmentDomain oriented development
Domain oriented development
 
Getting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and DataGetting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and Data
 
User Driven Software Architecture
User Driven Software ArchitectureUser Driven Software Architecture
User Driven Software Architecture
 
...and thus your forms automagically disappeared
...and thus your forms automagically disappeared...and thus your forms automagically disappeared
...and thus your forms automagically disappeared
 
Access tips access and sql part 4 building select queries on-the-fly
Access tips  access and sql part 4  building select queries on-the-flyAccess tips  access and sql part 4  building select queries on-the-fly
Access tips access and sql part 4 building select queries on-the-fly
 
NEXiDA at OMG June 2009
NEXiDA at OMG June 2009NEXiDA at OMG June 2009
NEXiDA at OMG June 2009
 
Software fundamentals
Software fundamentalsSoftware fundamentals
Software fundamentals
 
Top10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin ToolsTop10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin Tools
 
Interface Usability - Adding Schweppervescence
Interface Usability - Adding SchweppervescenceInterface Usability - Adding Schweppervescence
Interface Usability - Adding Schweppervescence
 
Brochure data science learning path board-infinity (1)
Brochure   data science learning path board-infinity (1)Brochure   data science learning path board-infinity (1)
Brochure data science learning path board-infinity (1)
 
Tableau ppt
Tableau pptTableau ppt
Tableau ppt
 
Tableau PPT
Tableau PPTTableau PPT
Tableau PPT
 
Tableau Online Training in canada
Tableau Online Training in canadaTableau Online Training in canada
Tableau Online Training in canada
 

Mehr von Razorleaf Corporation

COE 2017: Your first 3DEXPERIENCE customization
COE 2017: Your first 3DEXPERIENCE customizationCOE 2017: Your first 3DEXPERIENCE customization
COE 2017: Your first 3DEXPERIENCE customizationRazorleaf Corporation
 
Three Approaches to Integration that Deliver Greater PLM Value
Three Approaches to Integration that Deliver Greater PLM ValueThree Approaches to Integration that Deliver Greater PLM Value
Three Approaches to Integration that Deliver Greater PLM ValueRazorleaf Corporation
 
Discovering New Product Introduction (NPI) using Autodesk Fusion Lifecycle
Discovering New Product Introduction (NPI) using Autodesk Fusion LifecycleDiscovering New Product Introduction (NPI) using Autodesk Fusion Lifecycle
Discovering New Product Introduction (NPI) using Autodesk Fusion LifecycleRazorleaf Corporation
 
COE 2016 Live demo How to get to full Digitalization
COE 2016 Live demo How to get to full DigitalizationCOE 2016 Live demo How to get to full Digitalization
COE 2016 Live demo How to get to full DigitalizationRazorleaf Corporation
 
COE 2016: Technical Data Migration Made Simple
COE 2016: Technical Data Migration Made SimpleCOE 2016: Technical Data Migration Made Simple
COE 2016: Technical Data Migration Made SimpleRazorleaf Corporation
 
Autdoesk PLM 360 to PDM Integration with Jitterbit
Autdoesk PLM 360 to PDM Integration with JitterbitAutdoesk PLM 360 to PDM Integration with Jitterbit
Autdoesk PLM 360 to PDM Integration with JitterbitRazorleaf Corporation
 
DriveWorks World 2016 - 13 lessons in 12 years
DriveWorks World 2016  - 13 lessons in 12 yearsDriveWorks World 2016  - 13 lessons in 12 years
DriveWorks World 2016 - 13 lessons in 12 yearsRazorleaf Corporation
 
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)Razorleaf Corporation
 
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)Razorleaf Corporation
 
AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)
AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)
AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)Razorleaf Corporation
 
AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)
AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)
AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)Razorleaf Corporation
 
Deploying DriveWorks Throughout the Organization
Deploying DriveWorks Throughout the OrganizationDeploying DriveWorks Throughout the Organization
Deploying DriveWorks Throughout the OrganizationRazorleaf Corporation
 
3DVIA Composer for Assembly Instruction Storyboards
3DVIA Composer for Assembly Instruction Storyboards3DVIA Composer for Assembly Instruction Storyboards
3DVIA Composer for Assembly Instruction StoryboardsRazorleaf Corporation
 
Connecting SolidWorks EPDM and ENOVIA V6
Connecting SolidWorks EPDM and ENOVIA V6Connecting SolidWorks EPDM and ENOVIA V6
Connecting SolidWorks EPDM and ENOVIA V6Razorleaf Corporation
 
Solving Iterative Design Problems with TactonWorks
Solving Iterative Design Problems with TactonWorksSolving Iterative Design Problems with TactonWorks
Solving Iterative Design Problems with TactonWorksRazorleaf Corporation
 
COE2010 Razorleaf ENOVIA SmarTeam and V6 Readiness
COE2010 Razorleaf ENOVIA SmarTeam and V6 ReadinessCOE2010 Razorleaf ENOVIA SmarTeam and V6 Readiness
COE2010 Razorleaf ENOVIA SmarTeam and V6 ReadinessRazorleaf Corporation
 

Mehr von Razorleaf Corporation (20)

COE 2017: Your first 3DEXPERIENCE customization
COE 2017: Your first 3DEXPERIENCE customizationCOE 2017: Your first 3DEXPERIENCE customization
COE 2017: Your first 3DEXPERIENCE customization
 
COE 2017: Atomic Content
COE 2017: Atomic ContentCOE 2017: Atomic Content
COE 2017: Atomic Content
 
Three Approaches to Integration that Deliver Greater PLM Value
Three Approaches to Integration that Deliver Greater PLM ValueThree Approaches to Integration that Deliver Greater PLM Value
Three Approaches to Integration that Deliver Greater PLM Value
 
Discovering New Product Introduction (NPI) using Autodesk Fusion Lifecycle
Discovering New Product Introduction (NPI) using Autodesk Fusion LifecycleDiscovering New Product Introduction (NPI) using Autodesk Fusion Lifecycle
Discovering New Product Introduction (NPI) using Autodesk Fusion Lifecycle
 
COE 2016 Live demo How to get to full Digitalization
COE 2016 Live demo How to get to full DigitalizationCOE 2016 Live demo How to get to full Digitalization
COE 2016 Live demo How to get to full Digitalization
 
COE 2016: Technical Data Migration Made Simple
COE 2016: Technical Data Migration Made SimpleCOE 2016: Technical Data Migration Made Simple
COE 2016: Technical Data Migration Made Simple
 
COE 2016: 10 Cool Tools for 2016
COE 2016: 10 Cool Tools for 2016COE 2016: 10 Cool Tools for 2016
COE 2016: 10 Cool Tools for 2016
 
ENOVIA v6 R2013x Tips and Tricks
ENOVIA v6 R2013x Tips and TricksENOVIA v6 R2013x Tips and Tricks
ENOVIA v6 R2013x Tips and Tricks
 
Autdoesk PLM 360 to PDM Integration with Jitterbit
Autdoesk PLM 360 to PDM Integration with JitterbitAutdoesk PLM 360 to PDM Integration with Jitterbit
Autdoesk PLM 360 to PDM Integration with Jitterbit
 
DriveWorks World 2016 - 13 lessons in 12 years
DriveWorks World 2016  - 13 lessons in 12 yearsDriveWorks World 2016  - 13 lessons in 12 years
DriveWorks World 2016 - 13 lessons in 12 years
 
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (Tech Paper)
 
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)
AU 2015: Enterprise, Beam Me Up: Inphi's Enterprise PLM Solution (PPT)
 
AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)
AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)
AU 2014: Autodesk PLM 360 Success Story with Inphi (PPT)
 
AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)
AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)
AU 2014: Autodesk PLM 360 Success Story with Inphi (TECH PAPER)
 
Deploying DriveWorks Throughout the Organization
Deploying DriveWorks Throughout the OrganizationDeploying DriveWorks Throughout the Organization
Deploying DriveWorks Throughout the Organization
 
Automating Analysis with the API
Automating Analysis with the APIAutomating Analysis with the API
Automating Analysis with the API
 
3DVIA Composer for Assembly Instruction Storyboards
3DVIA Composer for Assembly Instruction Storyboards3DVIA Composer for Assembly Instruction Storyboards
3DVIA Composer for Assembly Instruction Storyboards
 
Connecting SolidWorks EPDM and ENOVIA V6
Connecting SolidWorks EPDM and ENOVIA V6Connecting SolidWorks EPDM and ENOVIA V6
Connecting SolidWorks EPDM and ENOVIA V6
 
Solving Iterative Design Problems with TactonWorks
Solving Iterative Design Problems with TactonWorksSolving Iterative Design Problems with TactonWorks
Solving Iterative Design Problems with TactonWorks
 
COE2010 Razorleaf ENOVIA SmarTeam and V6 Readiness
COE2010 Razorleaf ENOVIA SmarTeam and V6 ReadinessCOE2010 Razorleaf ENOVIA SmarTeam and V6 Readiness
COE2010 Razorleaf ENOVIA SmarTeam and V6 Readiness
 

Kürzlich hochgeladen

Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 

Kürzlich hochgeladen (20)

Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 

Automating With Excel An Object Oriented Approach

Hinweis der Redaktion

  1. Here’s the mandatory and cliché review of me and my company. Razorleaf is a services-only company providing implementation and customization, training and support for PDM including EPDM, SmarTeam, Aras, and Matrix, as well as Design Automation (that’s my specialty) including DriveWorks, Tacton, and custom solutions. As I said, services-only, so I won’t be trying to sell you anything, don’t worry.I am Paul Gimbel, known in the SolidWorks community as simply “The Sherpa.” I’ve been to every SolidWorks World, presented at quite a few of them. A trainer and demojock since the original, SolidWorks 95. So yes, I’m old, and yes, I’m starting to look it.