Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
merci, j'ai bien lu la charte.
Etant débutant, je crois qu'une description précise de la marche à suivre pour mon problème serai la bienvenue.Merci d'avance.
''...Exemple a f y dans la colonne A en y f a dans la colonne B ...''
Fonctions persos à mettre dans un module ordinaire.
Function ARABIC(Cellule As Range) As String 'avant XL2000
For C = 0 To Len(Cellule)
ARABIC = ARABIC & Right(Left(Cellule, Len(Cellule) - C), 1)
Next
End Function
Function ARABIC2(Cellule As Range) As String 'à partir de XL2000
ARABIC2 = StrReverse(Cellule)
End Function
Utilisation dans la feuille de calcul :
= ARABIC(A1)
Les valeurs en colonne A depuis A1.
En B1 : =SI(A1='';'';INDIRECT('A'&NBVAL(A:A)-LIGNE()+1))
formule à copier vers le bas
Ne fonctionne que s'il n'y a pas de cellules vides.
Si tu ne prviens pas à l'adapter à ton cas, mets un exemple en pièce jointe.
ça marche mais je si je peux copier toutes les cellules en A en une fois, je dois coller une à la fois les cellules en B. Comment coller en une fois et en sens inverse les cellules de la colonne A?
Excel est formidable, mais long à maîtriser pour un débutant!
Excusez moi de m'introduire dans cette file.
Les différentes formules proposées sont intéressantes. Voir aussi une autre formule qui fonctionne avec des cellules vides sur ce lien: Lien supprimé
Toutes ces formules recopient en sens inverse les données mais est il possible de recopier aussi en sens inverse des couleurs (fond de cellules ou chiffres en couleurs)? Si oui comment?
Après relecture, il me semble que l'interprétation de la question, par André, doit être la bonne...
Pour abonder…
Avec une plage contenant éventuellement des cellules vides et pouvant être déplacée (ce que ne permet pas la fonction Indirect(Lettre de colonne &….)) :
Matricielle à valider par ctrl + maj +entrée à mettre en ligne 1 d'une quelconque colonne et à recopier en..xxx
=INDIRECT(ADRESSE(GRANDE.VALEUR(SI(plage *** '';LIGNE(plage);'');LIGNE());COLONNE(plage)))
*** Remplacer par l'opérateur de comparaison ''différent de''
AV [aaa]
Pourquoi passer par Indirect() quand on peut y aller franchement ?
Si on démarre en C2 :
=INDEX(A$2:A$20;GRANDE.VALEUR(SI(A$2:A$20différent de'';LIGNE(A$2:A$20));LIGNES(C$2:C2))-1)
ou bien
=INDEX($A:$A;GRANDE.VALEUR(SI(A$2:A$20différent de'';LIGNE(A$2:A$20));LIGNES(C$2:C2)))
Les mêmes au conditionnel :
=SI(NBVAL(A$2:A$20)<LIGNES(C$2:C2);'';INDEX(A$2:A$20;GRANDE.VALEUR(SI(A$2:A$20différent de'';LIGNE(A$2:A$20));LIGNES(C$2:C2))-1))
Dans le fichier joint,
pour ne pas avoir à copier-coller 1 formule dans les autres cellules :
sélectionner entièrement la plage et valider par ctrl, maj et entrée
(mais ce n'est pas plus pratique, à mon avis) [file name=EnversScytale.zip size=1993]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/EnversScytale.zip[/file]
''..Pourquoi passer par Indirect() quand on peut y aller franchement ?..''
2 réponses possibles :
Réponse 1 : 'Pourquoi pas' ?
Réponse 2 : 'Pour éviter de passer par INDEX'
;-)
Remarque :
** INDEX($A:$A ''plombe'' la formule en cas de déplacement de la plage source
Pour ne pas être tributaire des possibles déplacement de la plage source et des erreurs
En démarrant en ligne 1 et matricielle :
=SI(ESTERR(GRANDE.VALEUR(SI(PLAGE différent de '';LIGNE(PLAGE);'');LIGNE()));'';INDIRECT(ADRESSE(GRANDE.VALEUR(SI(PLAGE différent de'';LIGNE(PLAGE);'');LIGNE());COLONNE(PLAGE))))
Pourquoi pas une petite macro :
Sub zzz()
x = 1
For i = [A65536].End(3).Row To 1 Step -1
If Cells(i, 'A') = '' Then
Else: Cells(x, 'B') = Cells(i, 'A'): x = x + 1
End If
Next
End Sub
Coller (ou taper) la formule en B1, puis cette cellule étant sélectionnée, passer sur le coin inférieur droit de B1 jusqu'à obtenir un curseur en forme de '+' et double-cliquer.
La formule sera copiée dans la colonne B sur un nombre de cellules égal aux cellules avec valeur de la colonne A.
Au niveau formules on est servi! impressionnant!
J'ai remarqué aussi la macro d'AV qui me plaît. Pourrais tu AV expliquer le code de cette macro?
D'autre part est il possible de faire suivre les couleurs des cellules dans l'inversion? J'ai introduit des chiffres en couleurs et fond de cellules coloriés directement ainsi qu'obtenus avec une MFC mais rien ne suit avec les différentes solutions proposées dans cette file. Quelqu'un aurait il une solution?
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.