..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

ZDRUŽEVANJE EXCEL DATOTEK

Pomoč pri delu z MS Excelom

ZDRUŽEVANJE EXCEL DATOTEK

OdgovorNapisal/-a fitefrbe » Ne nov 01, 2015 4:20 pm

Imam cca 200 excel datotek, ki imajo vse enako strukturo in bi jih rad združil v eno datoteko. Ali je potrebno napisati macro ali se to lahko reši drugače.
Prosim za najenostavnejšo rešitev!
fitefrbe
 
Prispevkov: 11
Pridružen: Po mar 02, 2015 4:09 pm



Matjazev.NET
 

Re: ZDRUŽEVANJE EXCEL DATOTEK

OdgovorNapisal/-a admin » Ne nov 01, 2015 6:18 pm

Pozdravljeni,

Excel orodja za združevanje tabel nima, zatorej je postopek relativno preprost a seveda zamuden. Odprete datoteko, označite podatke in jih prekopirate. Kot rečeno je to zagotovo najenostavnejši postopek, a je zamuden! Če želite to izvesti hitreje pa je potrebno poseči po makru.

Tudi v tem forumu imate kar nekaj makrov, ki združujejo liste oz. podatke; malce poiščite po forumu.
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3532
Pridružen: Sr jul 20, 2005 10:06 pm

Re: ZDRUŽEVANJE EXCEL DATOTEK

OdgovorNapisal/-a fitefrbe » Ne nov 01, 2015 7:35 pm

Pozdravljeni!

Hvala za odgovor. Spodaj je makro, ki sem ga našel na spletu in uspešno uporabil za združitev več datotek. Sem pa naletel na zanimiv problem, ki ga žal ne znam rešiti sam. Vse datoteke so se združile pravilno, vendar je problem v tem, da so se podatki iz več stolpcev (med katerimi so bili nekateri tudi prazni) prenesli v en ali dva stolpca, ne pa enako kot so bili v originalnih datotekah. Če so npr. v originalu podatki v stolpcu A (xxxx), B (yyyy), nato pa sta C in D stolpca prazna, pa je spet podatek v E stolpcu (2222), so podatki v združeni datoteki samo v stolpcu A v naslednji obliki - "xxxxyyyy;;2222"

Ali obstaja kakšna resitev?

Za odgovor se vam vnaprej zahvaljujem,

Lep pozdrav!

====================================================================
Sub simpleXlsMerger()
Dim bookList As Workbook
Dim mergeObj As Object, dirObj As Object, filesObj As Object, everyObj As Object
Application.ScreenUpdating = False
Set mergeObj = CreateObject("Scripting.FileSystemObject")

Set dirObj = mergeObj.Getfolder("C:\Users\Komerciala1\Desktop\Excel test")
Set filesObj = dirObj.Files
For Each everyObj In filesObj
Set bookList = Workbooks.Open(everyObj)

Range("A2:IV" & Range("A65536").End(xlUp).Row).Copy
ThisWorkbook.Worksheets(1).Activate

Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial
Application.CutCopyMode = False
bookList.Close
Next
End Sub
===========================================================
fitefrbe
 
Prispevkov: 11
Pridružen: Po mar 02, 2015 4:09 pm

Re: ZDRUŽEVANJE EXCEL DATOTEK

OdgovorNapisal/-a admin » Ne nov 01, 2015 7:58 pm

Pozdravljeni,

koda je sicer neoptimalna a naredi natanko to, kar obljublja, združi podatke iz vseh prvih listov vseh datotek v izbran mapi. To sicer dela preko funkcije Copy/Paste in ne vem kako naj bi vam delala tako kot trdite. Funkcija nikjer ne združuje posameznih podatkov v eno kolono, oz. ne združuje podatkov iz kolon A,B,C,D... samo v kolono A.

Sklepam, pa, da vi v mapi sploh nimate Excelovih datotek, temveč navadne tekstovne datoteke, v katerih pač v vsaki vrstici piše nekaj takšnega kot: "xxxxyyyy;;2222" in ko vi to odprete v Excelu je Excel dovolj pameten, da to razbije po posameznih kolonah. Sklepam torej, da vi v mapi sploh nimate Excelovih datotek, temveč tekstovne datoteke....
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3532
Pridružen: Sr jul 20, 2005 10:06 pm


Vrni se na Excel

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 3 gostov

cron