Mettre les données d'une cellule dans le VBA

bonjour

Je souhaiterais savoir comment écrire l'idée suivante:

Dans une cellule définie je pose une adresse de dossier ( ex: C:\User\machin\truc)

je veux poser automatiquement les chemin de cette cellule directement dans le code.

ex chemin=(valeur de cellule)

 Dim cell As Range
 Dim chemin As String, NomRep
 On Error Resume Next
chemin = "C:\Users\GRAPHISME\Documents\EXCEL\"

For Each cell In Range("A2:A" & Range("A65536").End(xlUp).Row)
 If cell <> "" Then
 NomRep = cell

MkDir chemin & cell.Value

 End If
 Next

j'ai bidouillé plein de truc mais ça ne fonctionne pas

du style:

placer

cell = Range("A1")
  chemin = cell.Value

devant le "chemin" du code, mais bon ce n'est pas ça...

à votre bon coeur ,mes seigneurs

Bonsoir

Donc ta cellule contient le chemin et le nom du répertoire

Je ne connais pas trop mais soit sur le que chemin existe

A partir de la cellule A1

Essayes

Sub test()
Dim cell As Range

  On Error Resume Next
  For Each cell In Range("A1:A" & Range("A65536").End(xlUp).Row)
    If cell <> "" Then
      MkDir cell.Value
    End If
  Next
End Sub

bonsoir

merci de vous intéresser à ma petite affaire.

je souhaites simplement dans ce code

Dim cell As Range
 Dim chemin As String, NomRep
 On Error Resume Next
chemin = "C:\Users\GRAPHISME\Documents\EXCEL\"

For Each cell In Range("A2:A" & Range("A65536").End(xlUp).Row)
 If cell <> "" Then
 NomRep = cell

MkDir chemin & cell.Value

 End If
 Next

avoir la possibilités d’écrire le chemin ou je vais créer mes dossiers en donnant l'adresse dans une cellule définie plutot que de l'avoir écrite en dur dans le code

remplacer

chemin = "C:\Users\GRAPHISME\Documents\EXCEL\"

par chemin=cellule E15 par exemple

dans cette fameuse cellule E15 je pourrais ecrire :C:\Users\GRAPHISME\Documents\EXCEL

Hum!! je ne sais pas si c'est très clair

Cdlt

Bonsoir

Je ne sais pas si tu as ma réponse

Le chemin n'est plus défini dans le code

Banzai64 a écrit :

Donc ta cellule contient le chemin et le nom du répertoire

Ou alors je ne comprend pas

Ach!!

il est clair que c'est l'embrouille.

Bon, le petit code que j'ai mis sur ce post est fait pour créer un dossier avec le nom de la cellule en colonne "A".

Ce dossier , il se pose automatiquement dans C:\Users\GRAPHISME\Documents\EXCEL puisqu'il est inscrit en dur dans le code.

<si dans ma cellule "A1" j'ai ecrit "Tartempion" le code crée un repertoire comme tel:

C:\Users\GRAPHISME\Documents\EXCEL\Tartempion

si dans ma cellule "A2" j'ai "Biloute" il fara en suivant

C:\Users\GRAPHISME\Documents\EXCEL\Biloute

c'est ce que produit le code et ça me va bien.Ce que je cherche , c'est faire la même opération mais dans un autre répertoire.

Par exemple : je souhaite créer les dossier "Biloute" et "Tartempion" dans un repertoire à cette adresse:

C:\Users\GRAPHISME\Projet\

si je veux que cela fonctionne il faut que je remplace dans le code:

chemin = C:\Users\GRAPHISME\Documents\EXCEL\

par

chemin =C:\Users\GRAPHISME\Projet\

voila l'astuce que je cherche, plutôt que re bricoler le code à chaque fois je voudrais poser l'adresse que je veux dans une cellule de la feuille et que cette même adresse se pose derrière "chemin="dans le code

Truc de fou !

Savoir ce que l'on veux et ne pas arriver à l'expliquer

Je connais pas votre vocabulaire, je ne fais que bidouiller quelques lignes et j'ai bien du malheur

Bonsoir

Regardes le fichier test que je me suis fait

Attention pour l'utiliser tu devras redéfinir le chemin en C1

15creation-rep.xlsm (17.74 Ko)

j'ai vu ton fichier, tu renvois l'adresse en cellule de la colonne "A" par formules incrémentées

maintenant regarde le fichier joint

Pour exécuter la macro "scrat" il faut que tu mettes une adresse de ta machine valide à la place de la mienne dans le code.

Quand tu ouvriras le répertoire de cette adresse tu auras 26 dossiers Toulouse dans ce répertoire.

Dis moi déjà si ça fonctionne.

Cdlt

Bonjour

J’utilise ce système de formule pour simplifier

Dans ton cas

  • Copies le chemin dans D1
  • Ensuite remplaces ta macro actuelle par celle-ci
Sub scrat()
Dim cell As Range
Dim chemin As String

  On Error Resume Next
  chemin = Range("D1")
  For Each cell In Range("A1:A" & Range("A65536").End(xlUp).Row)
    If cell <> "" Then
      MkDir chemin & cell.Value
    End If
  Next
End Sub

bonjour

Pfffff c'etait si simple.

un grand merci, c'est parfait

cordialement

Rechercher des sujets similaires à "mettre donnees vba"