intégrer une formule dans une cellule à l'aide d'une texbox

nadem0068

XLDnaute Junior
Bonjour à tous,

je viens une fois de plus vers vous car je ne trouve pas comment intégrer le nom d'une cellule dans une formule à l'aide d'une textbox.
je m'explique je suis en train de concevoir une sorte de générateur de tableau multi-fonction, et donc avec un nombre de colonne et de ligne variable jusque la tout va bien. Ce que je souhaite faire c'est insérer une formule (somme) par exemple au bout de mes lignes et au bout de mes colonnes.
Grace au principe que j'ai trouvé sur le forum et qui me semble super car adaptable avec plein de formule j'arrive à intégrer une formule comme ceci:
Cells(1, TextBox1 + 1).FormulaLocal = "=somme(a1:j1)"
cependant (a1) et (j1) dans cette exemple sont des valeur fixe
ce que je souhaiterais c'est quelque chose comme:
Cells(1, TextBox1 + 1).FormulaLocal = "=somme(a1:range(cells(textbox1))"
pour vous donné une idée
je joint un petit fichier pour me faire mieux comprendre.:rolleyes:
merci d'avence à toute les personnes qui prendront le temps de ce penchais sur mon petit souci :rolleyes:
 

Pièces jointes

  • insertion de formule en VBA.xlsm
    24.5 KB · Affichages: 35

nadem0068

XLDnaute Junior
Re : intégrer une formule dans une cellule à l'aide d'une texbox

rebonjour à tous on ce sens toujours un peut stupide quand on pose une question et que l'on trouve la réponse 2 minutes après:p
cependant je ne sais pas comment je pourrais tirer la dite formule sur le nombre de ligne ou de colonne créer juste avant. Peut être avec une boucle je ne sais pas trop tout en sachant que je part toujours de mes textbox si quelqu'un à une idée je suis preneur merci en attendant ci dessous la réponse à la question que je posé au départ ci ça peut aider quelqu'un on ne c'est jamais:)

Cells(1, TextBox1 + 1).FormulaLocal = "=somme(a1:a" & (TextBox1.Value) & ")"
Cells(TextBox2, 1).FormulaLocal = "=somme(a1:a" & (TextBox2.Value) & ")"

petit probléme quand même avec la (a) je ne c'est pas le modifier une ligne de 10 cellules c'est a1:j1 est donc à la place de (a) devrais ce trouver (j)
pareil pour les colonnes bien sur
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : intégrer une formule dans une cellule à l'aide d'une texbox

Bonsoir à tous

nadem0068 (Bienvenue sur le forum)
J'attends que tu te répondes de nouveau à toi-même car normalement tu devrais trouver tout seul la solution. ;)
(il suffit de loucher vers End(xlup).Row ou DerLig ou LastRow etc... il suffit d'un bon moteur de recherche)
 

Staple1600

XLDnaute Barbatruc
Re : intégrer une formule dans une cellule à l'aide d'une texbox

Re

Au cas où tu n'aurais pas trouvé ;) (et si j'ai bien compris ton souci )
(et parce que je m'étais un peu fourvoyé précédemment avec mes LastRow et cætera)
Essaies ceci
Code:
Private Sub CommandButton1_Click()
Cells.Clear
l = CLng(TextBox1): c = CLng(TextBox2)
With Cells(1, 1)
    With .Resize(l, c)
    .Borders.LineStyle = 1
    End With
    .Offset(0, c).Formula = "=SUM(" & Cells(1, 1).Resize(l, c).Address & ")"
End With
Me.Hide
End Sub
 

nadem0068

XLDnaute Junior
Re : intégrer une formule dans une cellule à l'aide d'une texbox

bonsoir vue l'heure :p

voici la solution pour le problème du (a) qui devait être (j), voir le début de la discussion maintenant le problème qui c'est tirer cette formule sur le nombre de ligne et de colonne défini avant dans les textbox
Cells(1, TextBox1 + 1).FormulaLocal = "=somme(a1:" & (Cells(1, TextBox1).Address) & ")"
Cells(TextBox2 + 1, 1).FormulaLocal = "=somme(a1:" & (Cells(TextBox2, 1).Address) & ")"
 

nadem0068

XLDnaute Junior
Re : intégrer une formule dans une cellule à l'aide d'une texbox

Bonjour à tous,

ci-dessous la réponse à ma question pour ceux que ça peut aider:cool:

Dim i As Integer
For i = 1 To TextBox2.Value
Cells(i, TextBox1 + 1).FormulaLocal = "=somme(" & (Cells(i, 1).Address) & ":" & (Cells(i, TextBox1).Address) & ")"
Next i
Dim x As Integer
For x = 1 To TextBox1.Value
Cells(TextBox2 + 1, x).FormulaLocal = "=somme(" & (Cells(1, x).Address) & ":" & (Cells(TextBox2, x).Address) & ")"
Next x

merci de l'aide qui ma était aporté;)
 

Staple1600

XLDnaute Barbatruc
Re : intégrer une formule dans une cellule à l'aide d'une texbox

Bonjour à tous

nadem0068
Ma réponse à ta question (sans passer par une boucle)
Code:
Private Sub CommandButton1_Click()
Dim l&, c&
l = TextBox2: c = TextBox1: Cells.Clear
Cells(1, c + 1).Resize(l).FormulaR1C1 = "=SUM(RC[-" & CStr(c) & "]:RC[-1])"
Cells(l + 1, 1).Resize(, c).FormulaR1C1 = "=SUM(R[-" & CStr(l) & "]C:R[-1]C)"
Range(Cells(1, 1), Cells(l, c)).Borders.LineStyle = 1
End Sub
 

Staple1600

XLDnaute Barbatruc
Re : intégrer une formule dans une cellule à l'aide d'une texbox

Re

nadem0068
Si tu ne comprends pas
Poses des questions sur la syntaxe que j'emploie, je t'y répondrai avec plaisir. ;)

NB: ma réponse ne fait que suivre ton chemin
ci-dessous la réponse à ma question pour ceux que ça peut aider
Je réponds d'abord à la question avant de répondre à celui qui l'a posé ;)
 

Discussions similaires

Réponses
3
Affichages
110

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 810
dernier inscrit
mohammedaminelahbali