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

štetje vrstic in vpis v excel tabelo

Pomoč pri izdelavi makrov

štetje vrstic in vpis v excel tabelo

OdgovorNapisal/-a drago39 » Pe sep 04, 2009 1:45 pm

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 !
drago39
 
Prispevkov: 3
Pridružen: Pe sep 04, 2009 12:53 pm



Matjazev.NET
 

OdgovorNapisal/-a admin » Pe sep 04, 2009 3:21 pm

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
admin
Site Admin
 
Prispevkov: 3537
Pridružen: Sr jul 20, 2005 10:06 pm

OdgovorNapisal/-a drago39 » Pe sep 04, 2009 9:05 pm

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.
drago39
 
Prispevkov: 3
Pridružen: Pe sep 04, 2009 12:53 pm

OdgovorNapisal/-a admin » So sep 05, 2009 1:03 pm

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
admin
Site Admin
 
Prispevkov: 3537
Pridružen: Sr jul 20, 2005 10:06 pm

OdgovorNapisal/-a drago39 » So sep 05, 2009 9:18 pm

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
drago39
 
Prispevkov: 3
Pridružen: Pe sep 04, 2009 12:53 pm

OdgovorNapisal/-a admin » Po sep 07, 2009 12:05 pm

Imate v tejle tematiki
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3537
Pridružen: Sr jul 20, 2005 10:06 pm


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 2 gostov

cron