Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Convertir un macro en fonction VBA

7 réponses
Avatar
azmustafa
Bonjour =E0 tous

Mon probleme est le suivant : Comment convertir ce macro en fonction :


Dim Gauche As Double
Dim Haut As Double
Dim FinGauche As Double
Dim FinHaut As Double
Gauche =3D Range("D8").Left
Haut =3D Range("D8").Top
FinGauche =3D Range("A10").Left
FinHaut =3D Range("A10").Top
ActiveSheet.Shapes.AddLine(Gauche, Haut, FinGauche, FinHaut).Select

Pour rendre la cellule D8 et A10 variable
pour appel=E9 la fonction j'utilise

call fonction

Merci d'avance

7 réponses

Avatar
JLuc
*Bonjour azmustafa*,
Une fonction, comme son nom l'indique doit renvoyer quelquechose : un
resultat de calcul, un booleen, ... ta macro se contente de
selectionner un shapes. Que voudrais tu qu'elle fisse ?

Bonjour à tous

Mon probleme est le suivant : Comment convertir ce macro en fonction :


Dim Gauche As Double
Dim Haut As Double
Dim FinGauche As Double
Dim FinHaut As Double
Gauche = Range("D8").Left
Haut = Range("D8").Top
FinGauche = Range("A10").Left
FinHaut = Range("A10").Top
ActiveSheet.Shapes.AddLine(Gauche, Haut, FinGauche, FinHaut).Select

Pour rendre la cellule D8 et A10 variable
pour appelé la fonction j'utilise

call fonction

Merci d'avance


--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O

Avatar
azmustafa
Merci de votre réponse
comment faire ça sans selectionner un shapes
mercie encore
Avatar
JLuc
*Bonjour azmustafa*,
Qelles donnees as tu, et que veux tu obtenir ?

Merci de votre réponse
comment faire ça sans selectionner un shapes
mercie encore


--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O

Avatar
michdenis
Bonjour azmustafa,

Tu peux essayer ceci :


'---------------------------
Sub Test()

'Pour appeler la fonction : (NomOngletFeuille, Cellule Début, CelluleFin)
'La message box retourne le nom de l'objet créé dans la feuille.
MsgBox MaShape("Feuil1", Range("B2"), Range("G25"))

End Sub
'---------------------------


'------------------------------------
Function MaShape(Sh As String, Debut As Range, Fin As Range) As String
Dim Gauche As Double
Dim Haut As Double
Dim FinGauche As Double
Dim FinHaut As Double
Gauche = Debut.Left
Haut = Debut.Top
FinGauche = Fin.Left
FinHaut = Fin.Top
With Worksheets(Sh)
With .Shapes.AddLine(Gauche, Haut, FinGauche, FinHaut)
MaShape = Application. _
Substitute(.OLEFormat.Object.Name, "Line", "Trait")
End With
End With
End Function
'------------------------------------


Salutations!



"azmustafa" a écrit dans le message de news:
Bonjour à tous

Mon probleme est le suivant : Comment convertir ce macro en fonction :


Dim Gauche As Double
Dim Haut As Double
Dim FinGauche As Double
Dim FinHaut As Double
Gauche = Range("D8").Left
Haut = Range("D8").Top
FinGauche = Range("A10").Left
FinHaut = Range("A10").Top
ActiveSheet.Shapes.AddLine(Gauche, Haut, FinGauche, FinHaut).Select

Pour rendre la cellule D8 et A10 variable
pour appelé la fonction j'utilise

call fonction

Merci d'avance
Avatar
azmustafa
Bonjour
ce que je veux faire, j'aurais des cellule égaux dans des vcolonne
différents, et je veux les reliers par des connecteur
je prensd la première colonne et je fais un teste avec la 3ème
colonne , si une celulle de la 3ème colonne est égale à une cellule
de la première colonne , je dois dessiner une flesh entre les deux
merçi
Avatar
JLuc
*Bonjour azmustafa*,
Maintenant j'ai compris !
michdenis t'a donne la reponse adequat (j'aurai pas su faire pour la
ligne)

Bonjour
ce que je veux faire, j'aurais des cellule égaux dans des vcolonne
différents, et je veux les reliers par des connecteur
je prensd la première colonne et je fais un teste avec la 3ème
colonne , si une celulle de la 3ème colonne est égale à une cellule
de la première colonne , je dois dessiner une flesh entre les deux
merçi


--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O

Avatar
azmustafa
Merci de m'aider par exemple dans une feuille de calcule, je me suis
perdu
je serai très reconnaissant