štetje vrstic in vpis v excel tabelo

Pomoč pri izdelavi makrov
Odgovori
drago39
Prispevkov: 3
Pridružen: Pe Sep 04, 2009 12:53 pm

štetje vrstic in vpis v excel tabelo

Odgovor Napisal/-a drago39 »

Potreboval bi makro, ki bi mi zelo olajšal delo. Nekaj podobnega sem že zasledil na vašem forumu ampak to ni to kar potrebujem.
Moj problem je sledeči: imam več wordovih dokumentov v nekem direktoriju rad bi jih vpisal v excel tabelo ( to je bil že bil narejen program, ki pa je prešteval besede). Jaz bi potreboval da mi prešteje vrstice, tudi prazne in jih zapiše v tabelo a= ime dokumenta b= stevilo vrstic. Bilo bi tudi željeno da bi se število vrstic napisalo na koncu dokumenta in bi se ta izprintal.

Da bo bolj razumljivo
1. v določeni mapi se vzame 1. dokument
2. preštejejo se vrstice
3. zspodaj se vpiše št. vrstic
4. dokument se natisne
5. prenese se v excel tabelo pod a= ime wordovega dokumenta,
pod b= stevilo vrstic v tem dokumentu
In tako vse do zadnjega dokumenta v tej mapi

Vem prošnja je velika, ampak makro bi mi zelo skrajšala čas, ker sedaj vse to delam ročno.
pozdrav !
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Popravljen makro iz tematike Makro za štetje besed v Wordu, da ustreza vašim željam:

Koda: Izberi vse

Option Explicit

Const wdStatisticWords = 0

' www.matjazev.net
' 4.9.2006
Sub PrestejWordBesedeVMapi()
  Dim mapa As String
  Dim Vrstica As Long
  Dim Datoteka As String
  Dim objWrd As Object
 
  mapa = "C:\"
 
  Set objWrd = CreateObject("Word.Application")
  
  Vrstica = 1
  Cells(Vrstica, 1) = "Datoteka"
  Cells(Vrstica, 2) = "Število besed"
  Vrstica = Vrstica + 1
 
  Datoteka = Dir(mapa & "\*.doc", vbNormal)
  Do While Datoteka <> ""
    Dim wFile
   
    Set wFile = objWrd.Documents.Open(mapa & "\" & Datoteka)
      Cells(Vrstica, 1) = mapa & "\" & Datoteka
      Cells(Vrstica, 2) = wFile.ComputeStatistics(wdStatisticWords)
    wFile.PrintOut
    wFile.Close
   
    Datoteka = Dir
    Vrstica = Vrstica + 1
  Loop
 
  Set objWrd = Nothing
End Sub

lp,
Matjaž Prtenjak
Administrator
drago39
Prispevkov: 3
Pridružen: Pe Sep 04, 2009 12:53 pm

Odgovor Napisal/-a drago39 »

Najlepša hvala za hiter odgovor.
Samo obstaja problem, Makro, ki ste ga vi napisali šteje besede jaz bi pa potreboval vrstice tudi prazne in seveda če je to mogoče vpisano v vsak word dokument in izprintano. Ja, sem že 58 let mlad in malo pozabljiv, pa sem pozabil da bi moralo biti v word dokumentu zraven števila vrstic tudi ime dokumenta, seveda če je mogoče.
Lep pozdrav in hvala že v naprej.
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Ups... sem spregledal, da želite šteti vrstice. Na veh makra dodajte vrstico

Koda: Izberi vse

Const wdStatisticLines = 1
in zamenjajte

Koda: Izberi vse

  ... "Stevilo besed"  -> "Števil vrstic"

ter 

  ... ComputeStatistics(wdStatisticWords) -> ComputeStatistics(wdStatisticLines)
Vsak dokument se vam izpiše - tako kot želite, podatki pa se vpišejo v Exel tabelo in ne v Word!
lp,
Matjaž Prtenjak
Administrator
drago39
Prispevkov: 3
Pridružen: Pe Sep 04, 2009 12:53 pm

Odgovor Napisal/-a drago39 »

Hvala in še enkrat hvala. Deluje, bi še mogoče lahko zvedel ukaz za štetje karakterjev (črk) v dokumentu tudi praznih.
Obljubim, potem bom pa dal mir.

Hvala vam za vse Drago
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Imate v tejle tematiki
lp,
Matjaž Prtenjak
Administrator
Odgovori