IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA-E: Pb copier-coller entre Excel et .csv


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut VBA-E: Pb copier-coller entre Excel et .csv
    Bonjour à tous,

    je suis novice dans la programmation en VBA Excel.

    voilà mon problème:

    j'ai créé un document Excel, dans lequel l'utilisateur futur entrera des données dans un tableau.
    il faut ensuite que je copie ces données et que je les colle dans un document .csv existant, que j'enregistre et que je referme le .csv.
    j'ai ainsi créé une boucle qui parcourre le tableau, et pour chaque valeur non nulle du tableau (valeurs allant de 1 à une valeur x donnée), je copie cette valeur et je la colle dans mon document csv ligne par ligne.
    pour la permire valeur, ça marche très bien, j'ai bien la valeur 1 qui apparait dans mon document csv, mais par la suite, ça beugue. il me semble que le soucis est dans l'activation du worksheet Excel dans lequel se trouve le tableau. j'ai bien essayé de faire workbooks("" ).worksheets("" ).activate, mais pas de résultats...

    est ce que qqn pourrait m'aider svp?

    je vous transmets le code que j'ai écris.

    merci par avance pour vos réponses!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     Private Sub CommandButton9_Click() 
     
     Dim h As Integer 
     x = Val(TextBox1.Text) 
     Dim NombreCase As Integer 
      NombreCase = x + x - 1 
       i = 1 
      j = 1 
      h = 1 
        For j = 1 To NombreCase 
      For i = 1 To NombreCase 
     Worksheets("Maschinen" ).Activate 
         If Val(ActiveSheet.Cells(13 + j, 2 + i)) > 0 Then 
      If Val(ActiveSheet.Cells(13 + j, 2 + i)) <= x Then 
      MsgBox ("Maschinen " & h) 
        For h = 1 To x 
      If Val(ActiveSheet.Cells(13 + j, 2 + i)) = h Then 
      Workbooks.Open Filename:="C:\Documents and Settings\Propriétaire\Bureau\Classeur1.csv" 
    ActiveSheet.Cells(2 + h, 1) = h 
      End If 
      Next 
      End If 
      End If 
      Next 
      Next 
    End Sub

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Plusieurs idées :
    Ouvres ton csv en tant que fichier text pour récupérer les données

    Quel séparateur as-tu dans ton csv ?

    Tu dis

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    tout d'abord merci d'avoir répondu à ma question

    a mon avis, le problème ne vient pas du séparateur que j'utilise, puisque la première valeur est bien collée comme je le veux, c'est par la suite qu'il y a qqchose à revoir.

    ensuite, si je convertis a chaque fois en fichier txt, ça va etre beaucoup trop long: lors de mon enregistrement, une dizaine de fichiers csv s'ouvrent, les nouvelles valeurs sont collées, ces fichiers sont enregistrés et refermés.
    si en plus de ça je dois encore convertir puis reconvertir, ça va mettre des plombes...

    franchement, je vois pas ou est mon erreur!!

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Ton csv EST un fichier texte. Un fichier texte structuré par des séparateurs.
    Si je te demandais ton séparateur, c'était pour savoir si dans mes procédures l'une d'elles ferait ce que tu veux... mais bon, puisque tu ne veux rien me dire, garde-le, ton séparateur !

Discussions similaires

  1. Copier/Coller entre Excel et un dataGridView
    Par vladvad dans le forum Windows Forms
    Réponses: 8
    Dernier message: 29/11/2017, 00h34
  2. [XL-2010] Copier/coller Entre deux classeurs excel VBA
    Par Benjen dans le forum Excel
    Réponses: 11
    Dernier message: 19/09/2014, 15h58
  3. [VBA] Pb avec Copier/coller d'une feuille Excel
    Par sebastien_oasis dans le forum Excel
    Réponses: 3
    Dernier message: 14/12/2007, 11h08
  4. [VBA-E]Problème Copier-Coller entre 2 classeurs
    Par Corlo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/05/2007, 14h31
  5. [VBA-E]échec copier-coller entre 2classeurs
    Par touche_a_tout dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 06/12/2006, 23h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo