Question sur formule et macros

Je reviens vers vous pour une nouvelle question. Tout d'abord je tiens à préciser que je ne suis pas super fort sur Excel, et du coté macros bah j'en ai tout simplement jamais fait.

Cependant j'ai réussi à faire quelque chose avec la commande qui permet de faire la macro selon mes clics.

Maintenant il me manquerai quelque chose et là j'avoue que je n'y arrive pas du tout je vous explique brievement

En fait je voudrais intégrer dans ma macro déjà existente le fait que à un moment je suis dans la colonne A2 je voudrais me déplacer en F1 et remonter donc de (-1;5) si j'ai bien compris et là dois faire la formule :

=CAR(CODE(F2)+ 1

Et donc si j'ai "A" en F2 çà me donnera "B".

Et du coup je voudrais que la macros fasse çà mais sans mettre la formule dans la case uniquement la valeur B.

Je reste à votre disposition si vous ne comprenez pas tout car il est vrai que çà ne semble pas bien clair

Bonjour

A essayer

Range("A2").Offset(-1, 5) = Chr(Asc(Range("F2").Value) + 1)

Bonne soirée

Merci pour votre réponse par contre çà ne marche pas dans mon cas parce que en fait je vais pas réellement sur A2, F1, çà va dépendre de la ligne que j'ai sélectionner en amont je vous joint ma macros ce sera plus facile :

Sub Nouvel_indice()
'
' Nouvel_indice Macro
'

'
    Selection.Copy
    Selection.Insert Shift:=xlDown
    ActiveCell.Offset(1, 0).Range("A1:G1").Select
    Application.CutCopyMode = False
    With Selection.Font
        .Name = "Arial"
        .FontStyle = "Normal"
        .Size = 8
        .Strikethrough = True
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
[b]    ActiveCell.Offset(0, 8).Range("A1").Select[/b]
    Selection.ClearContents
    ActiveCell.Offset(-1, 4).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 30).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(1, -2).Range("A1").Select
    ActiveCell.FormulaR1C1 = "Périmé"
    ActiveCell.Offset(0, 8).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 1).Range("A1").Select
    Selection.ClearContents
    ActiveCell.Offset(0, 4).Range("A1:F1").Select
    With Selection.Font
        .Name = "Arial"
        .FontStyle = "Normal"
        .Size = 8
        .Strikethrough = True
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
End Sub

Juste avant la partie en gras je me trouve dans la colonne A, et j'aurais voulu aller en F-1 et ici avec la lettre de F+1

J'ai essayé çà :

ActiveCell.Offset(-1, 5) = Chr(Asc(Range("A1").Value) + 1)

Mais çà ne marche pas

Bonsoir

trop compliqué

Tout dépends de ton départ

Toujours le même ?

C'est toujours dans F1 que tu veux écrire ?

Les .range("A1") sont inutiles

Tu peux faire

ActiveCell.Offset(-1, 4).Select

Le mieux c'est de joindre ton fichier avec des données bidons mais reflétant ton vrai fichier, parce que je ne vois pas du tout

Tu pars d'où ?

Tu veux aller où ?

A suivre

Alors en fait non le départ n'est même jamais la même case, et non c'est pas dans F1 que je veux ecrire mais dans le "F" de ma ligne, après pour les .range("A1") c'est pas moi qui les ai rajouter c'est fait tout seul quand j'ai crée la macro on va dire.

En fait en executant la macro çà commence pour dans ce cas, si je selectionne toute la ligne 15, çà la copie et çà l'insere au dessus ensuite sur ma premiere ligne (15 donc) çà barre de lg à planche 1et ce que je voudrais c'est que le A se transforme en B : et que au final çà donne çà :

Salut le forum

Désolé on ne travaille pas sur des images, essaye de joindre un fichier.

Mytå

Bonjour

Pas trop facile de suivre avec des images

J'ai essayé de reconstruire ton cheminement et je t'ai fait une macro

A tester

Si encore des soucis joins un fichier

Pas besoin de sélectionner la ligne complète, juste une cellule dans la ligne

Sub Nouvel_indice()
'
' Nouvel_indice Macro
'
Dim Lg As Long

  Lg = ActiveCell.Row
'
  Rows(Lg).Copy
  Rows(Lg).Insert

  With Application.Union(Range("I" & Lg + 1), _
                         Range("AX" & Lg + 1 & ":BD" & Lg + 1), _
                         Range("M" & Lg), _
                         Range("Aq" & Lg & ":AR" & Lg))
    .ClearContents
  End With

  With Application.Union(Range("A" & Lg + 1 & ":G" & Lg + 1), _
                         Range("BH" & Lg + 1 & ":BM" & Lg + 1)).Font
    .Name = "Arial"
    .FontStyle = "Normal"
    .Size = 8
    .Strikethrough = True
    .Superscript = False
    .Subscript = False
    .OutlineFont = False
    .Shadow = False
    .Underline = xlUnderlineStyleNone
    .ColorIndex = xlAutomatic
    .TintAndShade = 0
    .ThemeFont = xlThemeFontNone
    End With

  Range("AP" & Lg + 1) = "Périmé"

  Range("F" & Lg) = Chr(Asc(Range("F" & Lg + 1)) + 1)
End Sub

Bonne nuit

Impec c'est parfait, je te remercie.

Rechercher des sujets similaires à "question formule macros"