Copier/Coller a la suite

31teste01.xlsm (29.50 Ko)

salut tout le monde,

je recherche une macro "copier coller a la suite" mais je ne parviens pas a trouver donc je vous expose mon problème.

Dans la feuille 4 j'ai un liste de donnée de 12 colonnes je souhaiterais copier ces données via un userform (avec des boutons d'option) dans la feuille 2. Sachant que la feuille 2 possède un format type A4 en paysage avec une mise en page que je souhaite conserver.

-M'a question est de s'avoir si il est possible de faire un saut de 13 ligne avec une macro copier coller à la suite sachant que toute les données de la feuille 4 ne seront pas systématiquement choisi dans le même ordre??

-Seconde question: est il possible d'utiliser un userform pour faire ce genre de macro??

Bonsoir

On n'est pas sorti de l'auberge, à cause de tes cellules fusionnées cela va être une galère dans laquelle je ne m'y embarquerais pas

Refais tes tableaux sans cellules fusionnées

Pour t'en convaincre

Copie de la feuil4 la zone B2:B5 (par exemple) et colles la dans la colonne "Fournisseur" ou "Famille"

etienne84 a écrit :

un userform (avec des boutons d'option)

Ils servent à quoi ces boutons ?

bonjour banzai64

merci de ta réponse et désolée, de revenir que maintenant.

j'ai effectuer le copier coller que tu me disais mais celui ne pose pas de problème par contre c'est vrais que si l'ont fait un copier coller dans le sens inverse cela fusionne les cellules de réception donc et sa créer un vrai foutoir, après cela dépend des versions d'excel moi je suis sous excel 2010 donc sa ne pose pas de problème par contre pour les versions antérieure à 2010 c'est cela ne marcheras pas.

L'userform me sert a sélectionner différent groupe d'option. C'est groupe d'option son les données que je souhaite copier dans ma feuille 2 mais le nombre de ligne peux varier en fonction des élément le constituant.

pense tu que sa poserais un problème avec la manipulation que je souhaite faire??

Bonjour

Sans tes tableaux modifiés je ne continuerai pas

Ensuite il serait souhaitable d'avoir ton fichier avec l'userform

Et que tu inqiques ce que veux faire avec ces options, car pour le moment c'est le flou le plus complet

25classeur1.xlsm (23.76 Ko)

bon c' est bon les tableaux sont modifié

sur la feuille 2 j ai les données des options que souhaite coller chaque option contient 5 cellules et un nombreux x de ligne.

ce que je souhaite faire c 'est que quand je sélectionne une option la première sélectionné ce colle en C14 la seconde se colle en c X car le nombreux de ligne des options peux varier donc il me faut un code permettent de coller à la suite de...

en espérant avoir était plus claire^^

Bonjour

A vérifier (ce que j'ai compris)

Merci beaucoup c'est effectivement ce que je rechercher comme code mais j 'ai juste deux ou trois précisions par rapport a ce code pour optimiser sont efficacité

Pour les groupes car en faite dans la frame1 je ne pourrais sélectionner que l'une des deux options donc est il possible de n'avoir qu'une sélection qui vient ce coller??

exemple si je choisi l'option 1 elle ce colle ,mais je m'a perçoir que celle si ne correspond pas au besoin et qu'il me fallait la seconde options est-il possible que le premier choix s'efface automatiquement pour que la seconde option sélectionné ce colle a la place?

seconde question: toujours sur la feuille 1 je vais avoir plusieurs tableaux identique est -il possible de faire un saut pour conserver la mise en page et que ces options ce colle a la suite dans ces tableaux supplémentaire,,

Bonjour

Tu m'expliques

Comment déterminer que le collage que tu viens de faire correspond/ne correspond pas ce que tu voulais

Dans ce cas on ne pourra jamais coller option1 et option2 ensemble

Prépares un fichier avec plusieurs tableaux comme tu veux qu'ils soient

impératif il faut une cellule vide en colonne C à la fin de chaque tableau

bonjour

Alors c'est exactement sa, je doit pouvoir sélectionné soit la première options soit la deuxième, mais suivant les options je peux avoir jusqu’à 5 possibilité mais je souhaite en garder une seule.

Je te joints le fichier avec la mise en forme

après pour la colonne C ou une quelconque colonne elle serons toujours vide lors de la création d'un dossier.

est ce que tu pourrais m'expliquer le fonctionnement de ces deux code stp

Sub ReInitOptionButton()
Dim I As Integer
  For I = 1 To 4
    Me.Controls("OptionButton" & I) = False
  Next I
End Sub
Dim NbreLigne As Long
Dim Ligne As Long

Bonjour

Sub ReInitOptionButton()
Dim I As Integer
  For I = 1 To 4
    Me.Controls("OptionButton" & I) = False
  Next I
End Sub

Remet à False tous les boutons d'option

    Dim NbreLigne As Long
    Dim Ligne As Long

Déclaration des variables : Celles ci seront visibles depuis toutes les macros du module

Cela devient assez complexe à gérer

A tester si c'est ce que tu cherches

c'est exactement sa don j'avais besoin.

un grand merci à toi

Bonjour,

Au final j'ai un petit soucis au quelle je n'avais pas fais attention^^.

quelle code dois je utiliser lorsque je n'ai qu'un choix possible dans les boutons d'option???

Bonjour

Pas évident pour trouver

Merci, mais la je croix que je suis perdu mais complet ^^.

Je te joint un nouveau fichier sur le quelle j'ai un ajouter bouton d'option pour un choix unique car dans mon tableur en cours j'ai 5 cas comme celui-ci. J'ai essayer de bidouiller les codes que tu avais réalisé mais cela n'a rien donné a par des messages d'erreur.

Sa commence être complexe ce genre de code si tu pouvais m'expliquer pourquoi tu fais référence a la feuille 3 alors que j'en ai pas besoin??

Bonjour

Moi aussi je m'y perd

Lis les commentaires ils ne sont pas là pour égayer le code

A tester


etienne84 a écrit :

pourquoi tu fais référence a la feuille 3 alors que j'en ai pas besoin??

Vu la complexité du problème je copie tous les tableaux dans cette page et je rajoute/enlève les lignes, ensuite je recopie dans tes tableaux

Bonjour,

alors je viens de tester ton nouveau code sur mon dossier mais j'ai un message d’erreur qui s'affiche.

le bouton pour ouvrir l'userform fonctionne, en suite quand je sélectionne l'option celle-ci ce colle mais après j'ai le message d'erreur suivant qui intervient:

ERREUR D'EXÉCUTION'-2147024809 (80070057)

OBJET SPÉCIFIÉ INTROUVABLE.

La je clique sur le bouton débogage et il me surligne cette partie du code:

Sub Actualise(AncienBouton As Integer, NouveauBouton As Integer, Plage As Range)
Dim K As Integer, Ajustement As Integer
Dim Ligne As Long
Dim ResteLigne As Long
Dim NomFrame As String

  ' Récupère le nom de la frame du bouton cliqué
  NomFrame = Me.Controls("OptionButton" & NouveauBouton).Parent.Name

  With Sheets("Feuil3")
    If ClicOption > 0 Then
      If ClicOption = AncienBouton Then
        .Range("C" & Derligne).End(xlUp).Offset(-NbLgOption(AncienBouton) + 1).Resize(NbLgOption(AncienBouton), 8).Interior.ColorIndex = xlNone
        .Range("C" & Derligne).End(xlUp).Offset(-NbLgOption(AncienBouton) + 1).Resize(NbLgOption(AncienBouton), 8).ClearContents
      End If
    End If
    If .Range("C1") = "" Then
      Ligne = 1
    Else
      Ligne = .Range("C" & Derligne).End(xlUp).Row + 1
    End If
    If Ligne = Derligne Then
      MsgBox "Tableau complet"
      Exit Sub
    End If
    If Ligne + NbLgOption(NouveauBouton) > Derligne Then
      MsgBox "Plus de place pour copier les " & NbLgOption(NouveauBouton) & " lignes"
      Exit Sub
    End If

    Plage.Resize(NbLgOption(NouveauBouton)).Copy .Range("C" & Ligne)
    .Range("C" & Ligne & ":J" & Ligne).Resize(NbLgOption(NouveauBouton)).Interior.ColorIndex = IndiceCouleur
    IndiceCouleur = IndiceCouleur + 2
    If IndiceCouleur > 56 Then IndiceCouleur = 4

    ' On recopie les données de la Feuil3 dans les tableaux de la Feuil1
    Ligne = 1
    For K = 0 To UBound(Tableau) Step 2
      .Range("C" & Ligne & ":J" & Ligne).Resize(Tableau(K + 1)).Copy Range("C" & Tableau(K))
      Ligne = Ligne + Tableau(K + 1)
    Next K
    ResteLigne = Derligne - (.Range("C" & Derligne).End(xlUp).Row + 1)
  End With
  ClicOption = NouveauBouton     ' Numéro du bouton cliqué

  For K = 1 To UBound(NbLgOption)
 Me.Controls("OptionButton" & K).Enabled = True
    Ajustement = 0
    ' On est dans la même frame que le bouton cliqué mais ce n'est pas le même bouton que celui cliqué
    If NomFrame = Me.Controls("OptionButton" & K).Parent.Name And NouveauBouton <> K Then
      Ajustement = NbLgOption(NouveauBouton)
    End If
    If ResteLigne + Ajustement < NbLgOption(K) Then
      Me.Controls("OptionButton" & K).Enabled = False
    End If
  Next K
End Sub

Et cela ce produit pour tous les boutons d'option si tu a une idée de ce qui ce produit pour que se message d'erreur intervienne??


ha oui j'oublier y a t-il moyen de supprimer la couleur ??


ha oui j'oublier y a t-il moyen de suprimer la couleur ??

Bonjour

etienne84 a écrit :

quand je sélectionne l'option

Quel bouton ?

Je viens de faire plein d'essai et pas de souci

Oui sur ton fichier il n'y a pas d'erreur

c'est sur sur mon fichier complet que l'erreur ce produit tu n'aurais pas une idée de quoi sa pourrais venir avec ce message d'erreur??

ben aprés ce message intervient quand j'appuie sur n'importe quel bouton d'option.

Bonjour

Sans le fichier en faute pas évident

Quelle est la valeur de K ?

As tu un bouton d'option avec cette valeur ?

Macro sans les couleurs

ben le problème c'est que je ne peux pas mettre le fichier ou il y a l'erreur il est trop volumineux et trop de référence propre a l'entreprise.

Comment sa la valeur de K ??? c'est pas une constante??

Rechercher des sujets similaires à "copier coller suite"