yay a connection string
joke......
Its a little backwards in the way all this code is working and there are a couple of gaps
you need to be calling/getting the userdata before you try looking at the data 
The OutputRange here is coded like a variable.........to you have a Const OutputRange as String = "somename" somewhere in your module or is there any other code, if not this should be changed to a string, some range like "A1:B100" or the name of a namedrange
you really need to comment out all the red code and test whatst left
or send your workbook over 
Bookmarks