Archivar documentos word en carpetas desde excel

13/02/2008 - 22:38 por Jose | Informe spam
Hola foro:
Esta exposición la he hecho en el grupo de Word pero quisiera saber si es
posible hacerlo con un procedimiento VBA.
Necesito que alguien me ayude con lo siguiente:
En una carpeta que se llama "Archivo general de clientes", tengo 365
documentos de word que necesito guardar en las subcarpetas de cada uno de
los clientes que tambien se encuentran en esta carpeta general. Los
documentos y las carpetas tienen un nombre mas largo pero el principio de
unos y otras es la referencia única de cada cliente. Es un número de 8
dígitos seguido de un "-" y luego nombre, población, etc... creo que lo
importante son esos 8 dígitos primeros.
Hice algo parecido con fichas de clientes en excel y pude conseguir archivar
las fichas en las subcarpetas aunque la diferencia con lo que necesito ahora
es que al mismo tiempo abría la carpeta y archivaba la ficha. Ahora es
diferente porque las carpetas ya están creadas...
Estoy pensando en un procedimiento que "metiera/archivara" en cada
subcarpeta cuyo nombre empieza por un número de 8 digitos, p.e. "71000123"
el correspondiente documento de word (formato RTF) cuyo nombre empieza con
ese mismo número, es decir: "71000123-patatinpatatan.rtf" y así
sucesivamente.
Si es posible, cuando la subcarpeta no exitiera la creara con el mismo
nombre del documento word y archivara ese documento dentro tambien. (¿con
tratamiento de errores? ... eso sería ya lo máximo).
Gracias por la ayuda.
José Rafael

Preguntas similare

Leer las respuestas

#6 Jose
14/02/2008 - 22:14 | Informe spam
Buenas noches D. Fernando:
Lamento mucho el posicionamiento crítico de su contestación pues para nada
he querido molestar a nadie y mucho menos a Monica que muy amablemente me ha
querido explicar lo que es "chino para mi" ni a Héctor un gran maestro que
me ha ayudado en infinidad de ocasiones.
Lo que ha ocurrido es que al tratarse de documentos word me he atrevido a
postear en el grupo word que nunca antes lo habia hecho. Pero francamente no
entiendo ni "papa" y humildemente y DICIENDOLO (que habia posteado en word)
he pensado que consultarselo tambien a Héctor, facilitandole el código con
el que habia conseguido hacer lo mismo con excel, quizás, no lo sé, podría
conseguir lo mismo con los documentos word.
Al mismo tiempo me proponia a estudiar y comprender la amable contestación
de Monica que nunca antes habia oido hablar de Script y comandos. Pido
perdón por mi ignorancia y solicito su perdón, pues conozco la labor
altruista y generosa de todos ustedes ayudando a los que no sabemos.
Bien, Sr. Fernando que sepa que les admiro y recuerdo tanto a Hector, como a
KL, como a Fernando Arroyo (que será de él), a Ivan, Julian y otros que me
olvido pero que reconozco cuando los leo a todos les doy las gracias y de
nuevo deseo revindicarme de que mi intención no era hacer "mala praxis" ni
muchisimo menosme siento mal por sus palabras espero que me
comprenda porque yo les respeto y les admiro.
Saludos
José Rafael





"fermu [MVP Windows]" escribió en el mensaje
news:%
Jose escribió:
Hola Héctor:
Siento no haberme explicado mejor.




Hola José, me van a coser a gorrazos por lo que voy a decir, pero no me
puedo callar. Lo que estás haciendo es mala praxis en las news, porque
estás mareando tanto por Word como por Excel, y además desde Word ya te
han ofrecido una solución efectiva para llevar a cabo todo el proceso con
una simple linea de comandos que es la forma menos engorrosa y más
efectiva de llevar a cabo el proceso.
Responderte y ofrecer una contestación eficaz requiere tiempo que nadie
nos retribuye, no lo olvides para la próxima vez.

Saludos / Fernando M.
Fermu's Website - http://www.fermu.com
Registered Linux User #367696 - MS MVP Windows - Shell/User
La caridad bien entendida comienza por uno mismo (by Moni)
Respuesta Responder a este mensaje
#7 Héctor Miguel
14/02/2008 - 22:26 | Informe spam
hola, Jose !

Siento no haberme explicado mejor. Con esta ruta, tengo una carpeta: "Archivo general de clientes":
C:\Documents and Settings\José Rafael\Mis documentos\Archivo general de clientes
En esta carpeta existen 827 subcarpetas cuyos nombres son largos (no mas de 80 caracteres)
y todos ellos empiezan con un numero diferente y unico de 8 digitos por cada cliente.
En esta misma ubicacion tengo 825 documentos word en formato RTF cuyos nombres empiezan tambien con el codigo de cliente
es decir con un numero de 8 digitos que al formar parte de un nombre mas largo en realidad es una cadena de texto
(al igual que el nombre de las carpetas)



sigo sin poder ver el panorama completo con "cierta cliaridad"...

1) si lo importante para vincular subcarpetas y archivos *.RTF de clientes son solamente OCHO digitos...
cual es el objetivo de (man)tener subcarpetas cuyos nombres son de ~80 caracteres -??????????-

2) (seguramente) esta situacion dara origen a confusiones para cualquier codigo (p.e.)
si consideras que despues de los 8 digitos, cualquier cambio en los caracteres es ya una subcarpeta distinta (entonces...)
como determinar cual es la buena ? (asumiendo que pudieran encontrarse dos o mas que inicien con los mismos 8 digitos)

3) o sera acaso que la intencion es crear una subcarpeta por cada documento *.RTF ???

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#8 Jose
14/02/2008 - 22:40 | Informe spam
Hola Monica de nuevo:
En primer lugar quiero pedir disculpas al hilo de la reprimenda del Sr.
Fernando, porque no ha sido mi intención marear a nadie ni hacer mala
praxis.
Puede ser que no sepa plantear bien mis necesidades ni como dices hacer
suposiciones desde mi ignorancia. Perdón.
Voy a intentar explicame una vez mas

Tengo 827 carpetas con nombres largos es verdad +- 80 caracteres... los que
mas
ejemplo de nombre de carpeta:
71012123-Adrian Pérez Rubio_46520 Canals (Valencia)-E44

La ruta la puedo reducir sensiblemente trasladando las carpetas por ejemplo
a un directorio diferente:
C:\Archivo general de clientes\ (tambien puedo reducirlo a simplemente
Archivo C:\Archivo ( y luego mover)

El nombre de los documentos es de aproximadamente 25-30 caracteres..
ejemplo. 71012123-Adrian Pérez Rubio

El hecho de tener menos documentos que carpetas (325 documentos, perdon por
el lapsus) es porque no todos los clientes han comprado en determinadas
fechas... aunque se podría dar el caso que todos compraran... dificil !,
incluso de que hubieran clientes nuevos que han comprado y no tienen todavia
creada su carpeta.

En fin, que me dá igual si es por medio de scripts, comandos o VBA pero
tengo la necesidad de que cada carpeta de cliente ( que tambien puedo hacer
mas corta si fuera necesario) contenga una ficha (excel) y un consumo de
articulos (viene en Word)... por ahora solo tengo "archivada la ficha"...
En cuanto a que "el comando solo funcionaria si las carpetas fueran mismo
nombre que el archivo" puedo intentar comenzar de nuevo y nombrar las
carpetas con el mismo nombre del documento word y comenzar de nuevo en
cuanto a archivar las fichas de excel en las nuevas carpetas
En fin, dispuesto a lo que me aconsejeis...

gracias, gracias por vuestro tiempo lo siento
saludos
José Rafael



"Monica May" escribió en el mensaje
news:ucS$
hola,

Con esta ruta, tengo una carpeta: "Archivo general de clientes":
C:\Documents and Settings\José Rafael\Mis documentos\Archivo general de
clientes



En esta carpeta existen 827 subcarpetas cuyos nombres son largos (no mas
de 80 caracteres) y todos ellos empiezan con un número diferente y único
de 8 digitos por cada cliente.



> En esta misma ubicación tengo 825 documentos word en formato RTF cuyos
nombres empiezan tambien con el codigo de cliente, es decir con un número
de 8 digitos que al formar parte de un nombre mas largo en realidad es
una
cadena de texto (al igual que el nombre de las carpetas).



Bien para empezar comentarte que por favor no hagas suposiciones sobre lo
que realmente necesitas y te acerques y expliques exatamente lo que <<
realmente necesitas >> y con DATOS REALES ya que asi de esa manera
conseguiras lo que necesitas y si es posible claro esta ayudarte en tu
necesidad

Bien como nos comenta nuestro compañero Hector :-) y si has leido con
atencion lo que te comenta sobre tu consulta te habras parado a pensar -?-
en que logicamente no es posible lo que estas pidiendo tal cual nos estas
comentando en los hilos o post consultados , o tal cual yo estoy
entendiendo que es lo que necesitas ? ya que:

La ruta inicial tiene apox. >> 100 caracteres
Los archivos a mover tienen >> 80 caracteres
Las carpetas donde se han de incluir dichos archivos tienen otros 80
caracteres
con esto hacen 260 caracteres y ya si contamos las subcarpetas ya nos
ponemos en >> otros 80 caracteres ???

Luego en un prinicipio eran 365 archivos ahora ya son 825 [.RTF] -?-

luego tampoco le veo logica a poner semejante barbaridad de caracteres a
carpetas y archivos teniendo un sistema como tiene Office de organizacion
de archivos [excel u access ] que son un primor para la organizacion de
clientes, proveedores, etc

Usea se tal cual nos explicas [ hasta donde se y he entendido ] como que
no creo que fuera posible ni mediante VBE, ni scripts ni comandos [
MS-Dos ]


'[]

<< Explicacion del porque no funcionaria el comando que le ofreci en word
>>

http://tinyurl.com/3bulwq

para mover archivos hubiera bastado dejar el comando [ Move ] perooooo
leyendo a hector ;-) !! me he avispado de que me he pasado por alto dos
detalles >>

1º no pare a mirar los caracteres :-( , en mis pruebas probe el comando
con
>>

for %M
in(C:\12345678912345678912345678912345678912345678912345678912345678912345678912345678
\*.*") Do @( move %X %%~dpnM)

y ya sin meter mas subcarpetas ni ruta completa el sistema ya me dicta >>

<< el sistema no puede hayar la ruta especificada >>

Usease por ese lado no funcionaria :-(

2º el comando solo funcionaria si las carpetas fueran mismo nombre que
archivo :-(

Por lo tanto, el comando solo funcionaria para nombres cortos y ademas
mismo nombre de archivo



Respuesta Responder a este mensaje
#9 Jose
14/02/2008 - 22:56 | Informe spam
Hola Héctor:
1) El motivo de el nombre largo de las carpetas es poque necesito que
figuren:
el codigo: 71012123
el nombre: Adrian Pérez Rubio
la población: 46520 Canals (Valencia)
Agente : E42
Son "necesidades" de datos para el trabajo de muchas personas.

2) Los códigos de clientes son siempre ÚNICOS no se pueden repetir...

3) No, las carpetas ya existen... se trata de archivar dentro de ellas el
documento word (por cierto son 325 documentos no 825 ni 865)

De todas formas lee el último post a Monica... gracias y perdón por las
molestias (he recibido un varapalo de fermu)
Saludos y gracias
José Rafael



"Héctor Miguel" escribió en el mensaje
news:
hola, Jose !

Siento no haberme explicado mejor. Con esta ruta, tengo una carpeta:
"Archivo general de clientes":
C:\Documents and Settings\José Rafael\Mis documentos\Archivo general de
clientes
En esta carpeta existen 827 subcarpetas cuyos nombres son largos (no mas
de 80 caracteres)
y todos ellos empiezan con un numero diferente y unico de 8 digitos por
cada cliente.
En esta misma ubicacion tengo 825 documentos word en formato RTF cuyos
nombres empiezan tambien con el codigo de cliente
es decir con un numero de 8 digitos que al formar parte de un nombre mas
largo en realidad es una cadena de texto
(al igual que el nombre de las carpetas)



sigo sin poder ver el panorama completo con "cierta cliaridad"...

1) si lo importante para vincular subcarpetas y archivos *.RTF de clientes
son solamente OCHO digitos...
cual es el objetivo de (man)tener subcarpetas cuyos nombres son de ~80
caracteres -??????????-

2) (seguramente) esta situacion dara origen a confusiones para cualquier
codigo (p.e.)
si consideras que despues de los 8 digitos, cualquier cambio en los
caracteres es ya una subcarpeta distinta (entonces...)
como determinar cual es la buena ? (asumiendo que pudieran encontrarse
dos o mas que inicien con los mismos 8 digitos)

3) o sera acaso que la intencion es crear una subcarpeta por cada
documento *.RTF ???

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

Respuesta Responder a este mensaje
#10 Monica May
15/02/2008 - 00:27 | Informe spam
Hola jose,


Tengo 827 carpetas con nombres largos es verdad +- 80 caracteres... los que
mas
ejemplo de nombre de carpeta:
71012123-Adrian Pérez Rubio_46520 Canals (Valencia)-E44




Bien la organizacion de todo la veo un poco enrevesada :-? pero bueno a
ver estoy pensando en como podrias organizartelo mejor ...


La ruta la puedo reducir sensiblemente trasladando las carpetas por ejemplo
a un directorio diferente:
C:\Archivo general de clientes\ (tambien puedo reducirlo a simplemente
Archivo C:\Archivo ( y luego mover)



con esto me facilitas a mi el commando :) pero estoy pensando :-\


El nombre de los documentos es de aproximadamente 25-30 caracteres..
ejemplo. 71012123-Adrian Pérez Rubio



bien pregunto y comento »

Y si se eliminan las carpetas que tienes creadas ?

Y cogemos y creamos unas subcarpetas por cada archivo de word que tienes
en el directorio y luego modificar la macro de excel para que te guarde
los archivos de excel dentro de esas carpetas creadas ???

ya que el problema veo que esta con los archivos de word y carpetas con
caracteres excesivos ...

Entonces pues ahi tendrias a simple vistazo las carpetas asi »

71012123-Adrian Pérez Rubio

ya que no es necesario que sepan el codigo postal y etc... ya que para
saber eso podrias crear un archivo de excel adicional con todos los
datos de los clientes para que quien fuera de la empresa consultara los
datos de esos clientes en caso de necesidad ??

No sep digo eh? :-P !!

Saludos
Monica
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida