begin process at 2012 02 15 19:13:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Macro pour inverser les valeurs des lignes et des colonnes


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Macro pour inverser les valeurs des lignes et des colonnes

dimanche 15 octobre 2006 à 17:29:02 | Macro pour inverser les valeurs des lignes et des colonnes

mojopsg

Bonjour à tous, je cherche une macro capable d'inverser les valeurs de ce qui se trouve dans les lignes et les colonnes. J'arrive à le faire seulement pour une ligne et une colonne. Merci d'avance.
dimanche 15 octobre 2006 à 17:45:30 | Re : Macro pour inverser les valeurs des lignes et des colonnes

Charles Racaud

Membre Club
Salut,

Inverser les valeurs ? C'est à dire ?
La valeurs de droites passe à gauche et celle de gauche à droite ? Pareil pou haut et bas ?

Kenji

dimanche 15 octobre 2006 à 17:55:17 | Re : Macro pour inverser les valeurs des lignes et des colonnes

mojopsg

Eh bien en fait pour prendre un exemple, ce qui se trouve dans la case "1B" doit se retrouver dans la case "2A" et vice versa. Voila le code qui fonctionne mais seulement pour la première ligne et que je souhaiterais étendre à tout le tableau. "Private Sub CommandButton1_Click() Dim temp As String Dim i As Integer For i = 1 To 230 temp = Cells(1, i) Cells(1, i) = Cells(i, 1) Cells(i, 1) = temp Next End Sub"
dimanche 15 octobre 2006 à 17:56:54 | Re : Macro pour inverser les valeurs des lignes et des colonnes

mojopsg

Eh bien en fait pour prendre un exemple, ce qui se trouve dans la case "1B" doit se retrouver dans la case "2A" et vice versa.
Voila le code qui fonctionne mais seulement pour la première ligne et que je souhaiterais étendre à tout le tableau.

"Private Sub CommandButton1_Click()

Dim temp As String
Dim i As Integer

For i = 1 To 230
temp = Cells(1, i)
Cells(1, i) = Cells(i, 1)
Cells(i, 1) = temp

Next

End Sub"
dimanche 15 octobre 2006 à 18:00:17 | Re : Macro pour inverser les valeurs des lignes et des colonnes

ZANUS

Salut

1B? Késako? B1?

Tu veux transposer ou je n'ai pas compris
Range("A1").Select
 Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
       Selection.Copy
       Range("A1").End(xlDown).Offset(1, 0).Select
      Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, Transpose:=True
Rows("1:1").Select
       Selection.Delete Shift:=xlUp
dimanche 15 octobre 2006 à 18:08:57 | Re : Macro pour inverser les valeurs des lignes et des colonnes

Charles Racaud

Membre Club
Par example.
Ca inverse le tableau B2:K11
B2 va en K11
B3 va en K10
C4 va en J10
...

Public Sub InverserValuers()
   Const ColStart As Integer = 2
   Const ColEnd As Integer = 11
   Const RowStart As Integer = 2
   Const RowEnd As Integer = 11

   Dim iCol As Integer , iRow As Integer
   For iCol = ColStart To ColEnd - CInt ((ColEnd - ColStart) / 2)
     For iRow = RowStart To RowEnd - CInt ((RowEnd - RowStart) / 2)
       Dim TargetCol As Integer : TargetCol = (ColEnd + ColStart) - iCol
       Dim TargetRow As Integer : TargetRow = (RowEnd + RowStart) - iRow
       Dim TempValue As String : TempValue = Cells(iRow, iCol).Value
      Cells(iRow, iCol).Value = Cells(TargetRow, TargetCol).Value
      Cells(TargetRow, TargetCol).Value = TempValue
   Next iRow, iCol
End Sub

Kenji

dimanche 15 octobre 2006 à 18:15:46 | Re : Macro pour inverser les valeurs des lignes et des colonnes

mojopsg

Je ne sais pas mais voici deux captures d'écran qui illustreront ce que je veux faire.

Le première quand j'ouvre mon fichier excel et la deuxième après que j'ai appuyé sur le bouton. Mais cela ne fonctionne que pour la première ligne.

http://www.image-dream.com/image.php?image=28fce0ec51efaea49fb8c9d48274e232.jpg&pseudo=anonym

http://www.image-dream.com/image.php?image=bda9192ac08835adaccd07bb0c133b03.jpg&pseudo=anonym
dimanche 15 octobre 2006 à 18:17:21 | Re : Macro pour inverser les valeurs des lignes et des colonnes

Charles Racaud

Membre Club
Petite erreur dans mon code :
Il fallait bien boucler sur toutes les lignes

Public Sub InverserValuers()
   Const ColStart As Integer = 2
   Const ColEnd As Integer = 11
   Const RowStart As Integer = 2
   Const RowEnd As Integer = 11

   Dim iCol As Integer , iRow As Integer
   For iCol = ColStart To ColEnd - CInt ((ColEnd - ColStart) / 2)
     For iRow = RowStart To RowEnd
       Dim TargetCol As Integer : TargetCol = (ColEnd + ColStart) - iCol
       Dim TargetRow As Integer : TargetRow = (RowEnd + RowStart) - iRow
       Dim TempValue As String : TempValue = Cells(iRow, iCol).Value
      Cells(iRow, iCol).Value = Cells(TargetRow, TargetCol).Value
      Cells(TargetRow, TargetCol).Value = TempValue
   Next iRow, iCol
End Sub

Kenji

dimanche 15 octobre 2006 à 18:18:57 | Re : Macro pour inverser les valeurs des lignes et des colonnes

Charles Racaud

Membre Club
Ha ok,
Et faut t-il changer les valeurs du contenu ?

Kenji

dimanche 15 octobre 2006 à 18:24:18 | Re : Macro pour inverser les valeurs des lignes et des colonnes

mojopsg

Non les valeurs doivent juste changer de place. En fait j'ai un fichier excel qu'il m'est beaucoup plus pratique de construire en lignes mais que je veux exporter ensuite vers un autre logiciel qui n'accepte que les colonnes.

1 2

Cette discussion est classée dans : macro, lignes, valeurs, colonnes, inverser


Répondre à ce message

Sujets en rapport avec ce message

Inverser les lignes en colonnes [ par tnouar1 ] Applications Vb sallut tt le monde,j'ai un tableau excel (plage de données) que j'obtien apprtire des liaison d'autre feuilles,ma finalité est d'avoir Inverser colonnes et lignes dans un tableau ? [ par sarl_adc ] Hello,Je souhaiterais savoir s'il existe des contrôles déjà faits qui permettent de travailler en colonnes et non en lignes dans un tableau.Par exempl de l'aide pour une macro svp [ par matthieu7815 ] Bonjour, J'ai les colonnes A B C D E qui ont des données.Je souhaite en appliquant la macro:couper et coller dans une autre feuille les valeurs conten Inverser les valeurs des colonnes d'une ligne VBA [ par pgillou ] Bonjour à tous , Dans le cadre de mon activité professionnel et n'ayant très peu de connaissances en VB , je compte sur vos connaissances pour m'écla Macro excel : masquer des lignes quand la formule de l'une des deux colonnes est égale à zéro [ par kaobang83 ] Bonjour, J'ai un problème pour une macro... J'ai un tableau à deux colonnes, les lignes sont remplies grâce à des formules d'une autre feuille de ca [Catégorie modifiée .Net -> VBA] aide macro [ par dauphins14 ] [^^confus2]bonjour, j'aimerais créer une macro qui créer un tableaux. Mais le souci est que je ne connais pas le nombre de lignes qui sera renseigné. Balayage de lignes en VBA [ par Axeu ] Bonjour à tous, Je developpe un petit logiciel pour mon stage et je ne connais pas encore trop bien la programmation, actuellement j'ai un problème s Transposer certaines colonnes en lignes [ par variclix ] Bonjour, Je voudrais savoir comment on peut transposer certaines colonnes en lignes. Ex: J'ai ça : A A1 A11 A21 A31 A41 A51 A61 A71 A A2 A12 A22 A32 VBA [ par echidna00 ] Bonjour, J'ai besoin de votre aide , je suis nulle en vba. en effet j'ai une macro qui prend un fichier excel mais ne copie que les 3 premieres colon [Catégorie modifiée VB6 -> VBA] Transfert de lignes selon un critère défini vers une autre feuille excel dans le même classeur [ par saf3 ] Bonjour. voilà,j'ai utilisé une macro qui transfert des lignes contenant des données de types différents vers une autre feuille "excel". Mais ma ma


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,638 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales