Modification simple macro

Bonjour,

J'ai un petit problème concernant cette macro.

Je considère une tableau 23*11 et j'introduis grace à cette macro des formule dans les deux dernières colonnes....

Range("K3").Select

ActiveCell.FormulaR1C1 = "=(RC[-4]-R3C9)/R3C9"

Range("J4").Select

ActiveCell.FormulaR1C1 = "=(RC[-3]-R[-1]C[-3])/R[-1]C[-3]"

Range("J4").Select

Selection.AutoFill Destination:=Range("J4:J25"), Type:=xlFillDefault

Range("J4:J25").Select

Range("K3").Select

Selection.AutoFill Destination:=Range("K3:K25"), Type:=xlFillDefault

Range("K3:K25").Select

Comment modifier cette macro pour que le bord supérieur gauche du tableau soit une cellule que l'on veut ( cellule sélectionnée avant application de la macro ...) ?

Merci d'avance de votre aide

Bonsoir à tous,

Peux-tu envoyer la feuille, çà serait + facile pour t'aider

Amicalement

Claude

Bonsoir,

...soit une cellule que l'on veut ( cellule sélectionnée avant application de la macro ...

Je n'ai pas trop compris le problème ...

Sinon le code peut être déjà celui-ci :

With Range("J4")
    .FormulaR1C1 = "=(RC[-3]-R[-1]C[-3])/R[-1]C[-3]"
    .AutoFill Destination:=Range("J4:J25"), Type:=xlFillDefault
End With
With Range("K3")
    .FormulaR1C1 = "=(RC[-4]-R3C9)/R3C9"
    .AutoFill Destination:=Range("K3:K25"), Type:=xlFillDefault
End With

Amicalement

Dan

re,

En attendant la feuille, je verrais plutôt

Sub Tableau()
    Range("k3") = "=(g3-$i$3)/$i$3"
    Range("j3") = "=(g3-g2)/g2"
    Range("j3:k3").AutoFill Destination:=Range("j3:k25")
    Range("j3").ClearContents
End Sub

Claude

édit: ajouter "$"

Salut Dan

Bonsoir,

alors mon but est de générer un tableau 23*11 qui contienne les formules indiquées dans les deux dernières colonnes...comme vous l'avez compris !

Mais j'aimerais que le bord supérieur gauche du tableau soit la où je veux ... Dans les exemples que vous m'avez proposé le bord supérieur gauche est situé en A3 quoiqu'il arrive ( tableau A3:K25 ), je n'ai pas le choix de le placer où je veux.

En quelques sortes j'aimerai que lorsque je clique sur une cellule et lance la macro, cette cellule sélectionnée soit le bord supérieur gauche de mon tableau !

Merciiiii

re,

regarde si çà te vas comme çà, ou alors envoie une feuille commentée

Claude

14palou26-1.zip (12.57 Ko)
6donnees.xlsm (43.99 Ko)

Voila exactement ce que je recherche...

Merci de votre patience !!!!

Bonjour,

Tu nomme la plage "Tablo", et avec un double-clic

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Range("Tablo").Cut Destination:=ActiveCell
End Sub

ou avec un bouton associé à cette macro

Sub Deplace()
    Range("Tablo").Cut Destination:=ActiveCell
End Sub

Bonne journée

Claude

12palou26-2.zip (12.37 Ko)

bonjour à tous,

essaie ça palou26 :

Sub faitableau()
Dim lign As Long, col As Integer
    Application.ScreenUpdating = False
    lign = ActiveCell.Row
    col = ActiveCell.Column + 8
    If lign + 22 <= Cells.Rows.Count And col + 2 <= Cells.Columns.Count Then
        With ActiveCell
            .Offset(1, 9).Resize(22).FormulaR1C1 = "=(RC[-3]-R[-1]C[-3])/R[-1]C[-3]"
            .Offset(, 10).Resize(23).FormulaR1C1 = "=(RC[-4]-R" & lign & "C" & col & ")/R" & lign & "C" & col & ""
            With .Resize(23, 11)
                .Borders.LineStyle = xlNone
                With .Borders(xlEdgeLeft)
                    .Weight = xlMedium
                End With
                With .Borders(xlEdgeTop)
                    .Weight = xlMedium
                End With
                With .Borders(xlEdgeBottom)
                    .Weight = xlMedium
                End With
                With .Borders(xlEdgeRight)
                    .Weight = xlMedium
                End With
            End With
        End With
    End If
End Sub

Dans ton fichier, on compte 24 lignes dans ton tableau. Comme tu voulais un tableau de 23 lignes, la macro ci-dessus tient compte de ce nombre. Si pas ça, tu peux adapter.

Edit : salut claude ! t'as été plus rapide !

Edit2 : et en plus c'est pas bête !

Rechercher des sujets similaires à "modification simple macro"