Objects are code "things" the have properties and methods associated with them. As others have posted, a Range is such a code "thing". It has properties (I'm assuming you are familiar with these) such as Address, Formula, Font, Count, Interior, and a whole host more... some of these properties have properies of their own, such as Font, which has properties such as Name, Color, Bold, Size and so forth (and it is even possible for those properties to have properties of their own as well). Properties are equivalent, in a loose sort of way, to variables and/or constants... they have values assigned to them, sometimes the programmer can change these values like with a variable and sometimes the programmer can't change their values like with a constant (constants are declared with a Const statement in case you haven't come across them yet). Objects also have methods. Methods are equivalent to Subroutines (Sub's) and Functions... they either perform an action (like a Sub) or they perform an action and return a value resulting from that action (like a Function). Subroutines (not macros though) and Functions can have arguments, and so to can Methods. Arguments are chunks of data that you pass into the a Subroutine or a Function which they need to perform their actions. For example, think of of the Int function... by itself, Int can't do anything because you haven't told it what number to truncate down to an integer. The number you pass into the Int function, done via parentheses such as Int(1.23), is an argument. A Subroutine or Function associated with an object is called a Method (same name applies to both of them) and, like its subroutine and Funciton counterparts, it too can have arguments. So, so simplify this all for you... Methods are nothing more than Subroutines and Function associated only with the object being referred to into which you can pass pieces of data required by the Method in order for it to be able to perform its action.