Dear Experts,

By hit & trial method, I got file name with file path by adding line 
Range("A65536").End(xlUp).Offset(3, 
17) = FileName in the code.
Please guide me how to get file name only from full path address. I will 
need answer to balance points # 2, 3 & 4 from you, please.

Sub Data_Flex_Merger()
Dim bookList As Workbook
Dim FileName As Variant
Dim n As Long
Dim disWB As Workbook
Set disWB = ActiveWorkbook
FileName = Application.GetOpenFilename(filefilter:="Excel Files (*.xl*), 
*.xl*", MultiSelect:=True)
Application.ScreenUpdating = False

For n = LBound(FileName) To UBound(FileName)
Set bookList = Workbooks.Open(FileName(n))
Range("A2:Q50" & Range("A65536").End(xlUp).Row).Copy
disWB.Worksheets(1).Activate
Range("A65536").End(xlUp).Offset(3, 17) = FileName
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False

Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial
Application.CutCopyMode = False
bookList.Close False
Next n
Application.ScreenUpdating = True

End Sub

On Monday, 5 January 2015 12:26:39 UTC+3, Zafar Iqbal wrote:
>
> Dear Experts,
>
> VB Code in attached sample file is copying Range Sheet1(A2:Q50) from 
> Selected Files (600-01.xls, 600-02.xls, 600-03.xls, etc) in folder to 
> Active Sheet.
>
> Some improvement is needed in this code:-
>
> 1) Every File name should be written at first row in Column R of copied 
> range.
>
> Later on New files will be added in folder and their data is needed to be 
> pasted below current data in Active Sheet.
>
> 2) For data up-dation, code should copy data from only those files whose 
> name is not present in Active Sheet in Column R.
>
> 3) If file name exists then send warning message, “Do you want to replace 
> existing data of file (Name)?” If yes then code should replace existing 
> data of this file else go to next file.
>
> 4) Paste Special Column width is needed once only when data of last file 
> is pasted in active sheet. Avoid its repeating on each file.
>
>  Kindly help in this matter. Thanks in advance.
>
> Regards,
>
> Zafar Iqbal
>

-- 
Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s 
=TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @ 
https://www.facebook.com/discussexcel

FORUM RULES

1) Use concise, accurate thread titles. Poor thread titles, like Please Help, 
Urgent, Need Help, Formula Problem, Code Problem, and Need Advice will not get 
quick attention or may not be answered.
2) Don't post a question in the thread of another member.
3) Don't post questions regarding breaking or bypassing any security measure.
4) Acknowledge the responses you receive, good or bad.
5) Jobs posting is not allowed.
6) Sharing copyrighted material and their links is not allowed.

NOTE  : Don't ever post confidential data in a workbook. Forum owners and 
members are not responsible for any loss.
--- 
You received this message because you are subscribed to the Google Groups "MS 
EXCEL AND VBA MACROS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to excel-macros+unsubscr...@googlegroups.com.
To post to this group, send email to excel-macros@googlegroups.com.
Visit this group at http://groups.google.com/group/excel-macros.
For more options, visit https://groups.google.com/d/optout.

Reply via email to