VBA error 438 occurs when you try to use a property or method that does not support by that object. as you know all the objects have some properties and methods that you can use but there could be a situation when using a property or method that does not apply to a particular object.
Let’s take an example to understand this: with the worksheet object there comes up a method to select the worksheet.
Now as you know you can activate a workbook but there is no method that you can use to select a workbook because you cannot select a workbook, you can only activate it.
So when you try to use this method with the workbook object you’ll get the runtime error 438. Even you can see this method is not in the list of properties and methods of the workbook object.
Now you can understand that it can be a mistake on the end of the person who writes the code and can be committed even if you are proficient in VBA.
Note: When you have written a code in the latest version of Microsoft Excel and now you try to run it in an older version, there’s could be a chance that that version doesn’t have a method or a property for the object you are using.
How to Fix Object Doesn’t Support this Property or Method
The best way to deal with this error 438 (Object Doesn’t Support this Property or Method) you need to be aware of the properties and methods that are supported by the object you are using.
When you define an object, you can see the list of all the properties and methods when you type a dot (.).
This list can help you to decide if the method you want to use is there not. And if it’s not there you need to find a different way to write a code for the task that you want to accomplish. Otherwise, you can also open the object browser (F2) to see the properties and methods you have with an object.
More on VBA Errors
Subscript Out of Range (Error 9) | Type Mismatch (Error 13) | Runtime (Error 1004) | Object Required (Error 424) | Out of Memory (Error 7) | Invalid Procedure Call Or Argument (Error 5) | Overflow (Error 6) | Automation error (Error 440) | VBA Error 400