I don't know whether this will help, but you can use start recording macro then go to Data tab and use get data from Text/CSV, this will generate a code which can be used to read from a csv file without opening. However it will paste the data in your worksheet rather than in an array.