Copy-paste automat in word

Informatii despre cum se utilizeaza Microsoft Word 2007. Editare, formatare, automatizare de documente
Închis
valymyky
Mesaje: 104
Membru din: Mie Feb 09, 2011 9:24 pm

Copy-paste automat in word

Mesaj de valymyky » Mie Sep 17, 2014 3:29 pm

Buna ziua,

Am un fisier excel unde pe coloana B se gasesc zilele saptamanii corespunzatoare unei luni (in exemplul atasat am lasat doar luni si marti). Tot aici veti gasi si un buton care atunci cand este apasat deschide fisierul word "centralizator" iar apoi pe rand fisierele corespunzatoare din coloana B pe care le copiaza in centralizator. Totul functioneaza ok, doar ca atunci cand copiaza informatia dintr-un fisier si o lipeste in centralizator se mareste cu cateva randuri (nu-si pastreaza formatarea exacta pe care o are). Centralizatorul are exact aceleasi setari ca si oricare din celelalte fisiere, iar daca copiez manual un fisier in centralizator informatia copiata are aceeasi "lungime" ca in fisierul de unde am copiat.
(Atunci cand se copiaza automat folosind excelul, fisierele word nu trebuiesc deschide de catre utilizator, se deschid si inchid singure)
Care sa fie problema?
Am inregistrat si un macro atunci cand am copiat si lipit manual iar codul rezultat este acelasi ca cel pe care-l folosesc si in codul din excel
pentru copy

Cod: Selectaţi tot

Selection.WholeStory
pentru paste

Cod: Selectaţi tot

Selection.PasteAndFormat (wdFormatOriginalFormatting)
acesta este codul complet din excel

Cod: Selectaţi tot

Sub CopyWordToWord()

Dim originalDoc As Word.Application, tempDoc As Word.Application
Dim TIMP As Date

    INCEPUT = Time


   '' Application.ScreenUpdating = False

    sPath = ActiveWorkbook.Path

    Set originalDoc = New Word.Application
    originalDoc.Visible = True
    originalDoc.Activate
    originalDoc.Documents.Open (sPath & "\" & "centralizator.doc")
    Application.ScreenUpdating = False
    ''Options.Pagination = False ''pus ulterior
    Set centra = originalDoc

    For Each c In Range("B1:B" & Range("B65500").End(xlUp).Row)

    Set tempDoc = New Word.Application
    tempDoc.Visible = False 'se pune True daca vrem sa vedem fisierul in timp ce copiaza
    ''tempDoc.Activate 'se activeaza aceasta linie daca avem True la Visible
    tempDoc.Documents.Open (sPath & "\" & c & ".doc")
    tempDoc.Selection.WholeStory
    tempDoc.Selection.Copy

  
    centra.Activate
   '' centra.Selection.Paste
    centra.Selection.PasteAndFormat (wdFormatOriginalFormatting)

    
    tempDoc.Quit SaveChanges:=False
    Set tempDoc = Nothing
    
    Next c
    Application.ScreenUpdating = True
    ''Options.Pagination = True ''pus ulterior

  
   
    centra.Activate
    'centra.Quit SaveChanges:=True

   '' Application.ScreenUpdating = True
    
SFARSIT = Time
   TIMP = SFARSIT - INCEPUT
   
   MsgBox "Timpul de executie  : " & TIMP, vbInformation
    

End Sub

Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.
Ultima oară modificat Joi Sep 18, 2014 7:46 pm de către IPP, modificat 1 dată în total.
Motiv: Inlocuire arhiva la cererea utilizatorului

Avatar utilizator
Dr.Excel
Site Admin
Site Admin
Mesaje: 1989
Membru din: Sâm Ian 24, 2009 1:45 pm
Localitate: Bucharest
Contact:

Re: Copy-paste automat in word

Mesaj de Dr.Excel » Dum Sep 28, 2014 11:07 am

Vezi daca iti functioneaza mai bine: wdPasteRTF (in loc de wdFormatOriginalFormatting)
Nu de alta dar am vazut ca desi folosesti Word 2007 lucrezi cu doc-uri (ma gandesc ca formatul rtf este mai sanatos in cazul asta). Problema cu rtf este ca daca ai formatari mai complexe o sa ai alte probleme.
Am testat pe versiunea Word 2010 si nu am avut problemele semnalate de tine. Iti recomand sa folosesti in continuare Word 2007, dar exporta fisierele in noul format (docx). Sa ne spui daca s-a rezolvat astfel problema.

MCT, MCITP
MOS Master Instructor
IT Learning

valymyky
Mesaje: 104
Membru din: Mie Feb 09, 2011 9:24 pm

Re: Copy-paste automat in word

Mesaj de valymyky » Lun Sep 29, 2014 3:02 pm

Buna ziua Dr. Excel,
Va multumesc pentru raspuns dar din pacate rezultatul este acelasi. Am incercat si in format rtf si in docx. Acasa folosesc office 2010 iar la serviciu 2007, rezultatul find acelasi. La setarile word-ului nu am umblat la niciun office, nu stiu care ar fi problema. Cum am spus, pe exemplul din atasamentul acestui subiect, daca copiez manual continutul din oricare fisier in centralizator, de n ori, sfarsitul nu sare din pagina, dar daca fac acest lucru automat sare, am atasat si un print screen cu rezultatul.
word automat
[img]
word%20automat.jpg
[/img]
word manual
[img]
word%20manual.jpg
[/img]
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

Avatar utilizator
Dr.Excel
Site Admin
Site Admin
Mesaje: 1989
Membru din: Sâm Ian 24, 2009 1:45 pm
Localitate: Bucharest
Contact:

Re: Copy-paste automat in word

Mesaj de Dr.Excel » Lun Sep 29, 2014 3:46 pm

mi se pare mie sau tabelele sunt puse in textbox-uri :(

MCT, MCITP
MOS Master Instructor
IT Learning

valymyky
Mesaje: 104
Membru din: Mie Feb 09, 2011 9:24 pm

Re: Copy-paste automat in word

Mesaj de valymyky » Lun Sep 29, 2014 9:30 pm

nu, sunt tabele, fara textbox-uri

Avatar utilizator
Dr.Excel
Site Admin
Site Admin
Mesaje: 1989
Membru din: Sâm Ian 24, 2009 1:45 pm
Localitate: Bucharest
Contact:

Re: Copy-paste automat in word

Mesaj de Dr.Excel » Lun Sep 29, 2014 9:48 pm

Tabelele au fost copiate din Excel sau au fost facute direct in Word?

MCT, MCITP
MOS Master Instructor
IT Learning

valymyky
Mesaje: 104
Membru din: Mie Feb 09, 2011 9:24 pm

Re: Copy-paste automat in word

Mesaj de valymyky » Lun Sep 29, 2014 11:31 pm

Au fost facute direct in Word.

Închis

Înapoi la “Intrebari despre Word 2007”