Having utilized a macro found online and manipulating it to do much what you want, here is a VBA macro. So have a data\In nad data\out somewhere. Put your xlsb files in the in. then create a master excel file and and the macro into the code (alt-f11). Then alt-f8 run the code. It will ask you to locate the in folder, then open each file in that folder, saving the file as xlsx, then closing that file. You don't actually even need to save the master. Note this was just a quick manipulation to show operation not a full blown set of code (which should have error checking etc.). Sub GetFileNames() Dim xRow As Long Dim xDirect$, xFname$, InitialFoldr$ InitialFoldr$ = "C:\" ' With Application.FileDialog(msoFileDialogFolderPicker) .InitialFileName = Application.DefaultFilePath & "\" .Title = "Please select a folder to list Files from" .InitialFileName = InitialFoldr$ .Show If .SelectedItems.Count <> 0 Then xDirect$ = .SelectedItems(1) & "\" xFname$ = Dir(xDirect$, 7) Do While xFname$ <> "" Set wb = Workbooks.Open("s:\temp\rob\data\in\" & xFname$) wb.SaveAs "s:\temp\rob\data\out\" & Replace(xFname$, ".xlsb", ".xlsx"), FileFormat:=51 wb.Close False xRow = xRow + 1 xFname$ = Dir Loop End If End With End Sub
... View more