déplacement simultané de 2 cellules non contigues

cycy

XLDnaute Nouveau
bonjour et merci à vous accordé de l'importance à mon problème
je souhaite sur un tableau déplacer le contenu d'une cellule vers la droite de 1,2,3.. colonnes et qu'en même temps le contenu d'une cellule 4 lignes plus bas ce déplace elle aussi en simultané vers la droite de 1,2,3 ....colonnes
le contenu des cellules est uniquement du texte
je ne veux avoir à sélectionner qu'une seule cellule
cordialement
cyrille
 

Softmama

XLDnaute Accro
Bonjour cycy, James007

Une autre proposition en PJ.
VB:
Public Memo As String

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address = "$E$6" And Target = "" Then
    Memo = Range("E10").Text
    [E10] = ""
ElseIf Target.Row = 6 Then
    Cells(10, Target.Column) = Memo
End If
End Sub
 

Pièces jointes

  • TestCycy2.xls
    17.5 KB · Affichages: 56
  • TestCycy2.xls
    17.5 KB · Affichages: 54
  • TestCycy2.xls
    17.5 KB · Affichages: 54

cycy

XLDnaute Nouveau
Re : Re: déplacement simultané de 2 cellules non contigues

merci à vous deux pour vos réponses
désolé james007 mais softmana à une solution qui correspond exactement à ce que je voulais
j'ai juste un petit problème avec ta solution
lorsque je déplace bonjour 1 première fois hello se déplace bien mais si je le déplace une deuxième fois hello se copie colle et il y un hello de plus sur la feuille
dans l'attente de te lire SuperSoftNana
cyrille
 

Softmama

XLDnaute Accro
Bonjour,

Un autre essai ici :
VB:
Public Memo As String

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Row = 6 Then
    If Target = "" Then
        Memo = Cells(10, Target.Column).Text
        Cells(10, Target.Column) = ""
    Else
        Cells(10, Target.Column) = Memo
    End If
End If
End Sub
cf. fichier joint
 

Pièces jointes

  • TestCycy2.xls
    20.5 KB · Affichages: 54
  • TestCycy2.xls
    20.5 KB · Affichages: 51
  • TestCycy2.xls
    20.5 KB · Affichages: 48

cycy

XLDnaute Nouveau
Re : déplacement simultané de 2 cellules non contigues

je commence à utiliser la macro que tu m'a gracieusement préparé mais un problème m'apparait , je pensais pourvoir la réutiliser sur la même feuille une ou plusieur lignes plus bas mais je n'y arrive pas ; j'ai joint un tableau afin de comprendre la finalité de la chose
merci
cyrille
 

Pièces jointes

  • archive.zip
    2.7 KB · Affichages: 25
  • archive.zip
    2.7 KB · Affichages: 24
  • archive.zip
    2.7 KB · Affichages: 28

cycy

XLDnaute Nouveau
Re : déplacement simultané de 2 cellules non contigues

je viens de joindre un tableau avec des explications ; j'espères que ce sera suffisament clair pour comprendre mes besoins
cyrille
 

Pièces jointes

  • archive.zip
    5.8 KB · Affichages: 24
  • archive.zip
    5.8 KB · Affichages: 24
  • archive.zip
    5.8 KB · Affichages: 27

James007

XLDnaute Barbatruc
Re : déplacement simultané de 2 cellules non contigues

Bonjour Cyrille,

Deux questions complémentaires à la lecture de ton fichier ...

1. Est-ce-que le total facturation est un grand total pour tous les 30-40 clients ou un sous total par client ...?

2. La taille d'une plage consacrée à un client est-elle constante et répliquée pour les autres clients ou bien la taille de la plage peut changer en fonction du client ?

A +
:)
 

Softmama

XLDnaute Accro
Re : déplacement simultané de 2 cellules non contigues

Bonjour cycy et James007,

Avec les quelques précisions apportées, je te joins une proposition en PJ. Vois si cela convient ainsi, avec cette macro dans le module de la feuille :
VB:
Private Tableau(), PosDépl As String, BoolDépl As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Row = 24 Or Target.Row = 35 Then 'adapter les n° de lignes qui devront réagir
    If Target = "" Then
        PosDépl = Target.Address
        Tableau = Range(Target(2, 1), Target(10, 1))
        Range(Target, Target(10, 1)) = ""
        BoolDépl = True
    Else
        If BoolDépl = True Then
            Range(Target(2, 1), Target(10, 1)) = Tableau
            Range(Range(PosDépl), Target) = Target
            BoolDépl = False
        End If
    End If
End If
End Sub
 

Pièces jointes

  • Classeur1.xls
    36.5 KB · Affichages: 46
  • Classeur1.xls
    36.5 KB · Affichages: 53
  • Classeur1.xls
    36.5 KB · Affichages: 59
Dernière édition:

cycy

XLDnaute Nouveau
Re : déplacement simultané de 2 cellules non contigues

bonjour ,
1 ) le total facturation additionne tous les client , je n'ai pas besoin de sous total
2 ) le nombre de lignes consacré à 1 client ( chantier ) est constant et dupliqué suivant le nombre de chantier à faire
cyrille
 

Softmama

XLDnaute Accro
Re : déplacement simultané de 2 cellules non contigues

2 ) le nombre de lignes consacré à 1 client ( chantier ) est constant et dupliqué suivant le nombre de chantier à faire
cyrille

En ce cas, adapte la macro ainsi : remplace la ligne
VB:
If Target.Row = 24 Or Target.Row = 35 Then 'adapter les n° de lignes qui devront réagir

par
VB:
If (Target.Row-24) Mod 11 = 0 Then 'Si la 1ère ligne commence bien à la ligne 24 et qu'il y a bien 11 lignes pour chaque chantier
 

cycy

XLDnaute Nouveau
Re : déplacement simultané de 2 cellules non contigues

bonsoir à vous deux james007 et softmama ,
je viens de regarder en détail la proposition de softmama et plusieurs point ne correspondent pas à mon besoin même si la modification de formule fonctionne ,
voilà les différents problèmes
1 ) lorsque je déplace J24 vers K24 le déplacement se réalise correctement mais le texte reste inscrit dans J24
2 )lorsque je déplace G24 vers H24 , G25 avec le montant qui lui correspond ( 500 € ) se déplace aussi
3 ) si je déplace J24 vers N24 , le texte qu'il y à en N25 avec le montant qui lui correspond ( 5000 € ) disparait
petite question supplémentaire
voir comment faire une autre macro pour la 2 ieme ligne du planning ( ex : déplacement de G25 vers H25 )
merci à vous et bon courage
ps : tout cela est je le comprend un peut compliqué ; est ce qu'il n'y aurais pas une solution avec des codes couleurs ?
 

Discussions similaires