Pas evident de donner un titre

B

BocBoc

Guest
Bonjour,

Je ne sais pas trop comment definir ma requete donc pas evident de donner un titre...
En fait je fait une petite macro excel qui pourrait me permettre d'extraire un certains nombres de parametres et de les traiter (distribution et autres).

Voici le mon souci:

je defini une colonne de data et je la nomme Temp, qui corespond elle meme a un nom de colonne , c du texte donc temp = " texte "

ActiveWorkbook.Names.Add _
Name:=Temp, RefersToR1C1:= "='" + SheetName + "'!" + DataLocation1

Temp = contient le nom de la colonne de data
SheetName= variable contenant le nom de la feuille
DataLocation1 = l adresse de la colonne de data


le souci , c'est qu ensuite je veux l 'utiliser dans une fomule et ca coince:

ActiveCell.FormulaR1C1 = "=ROUNDDOWN((MIN(Temp)),0)"
et comme le Temp =" texte" , la formule n aime pas les "" ....

Si quelqu un a une suggestion ou une autre maniere pour detourner le pb, je suis tout ouie .

Merci d avance
 
@

@+Thierry

Guest
Re: Ecrire une Formule référant à une Plage nommée, le tout en VBA

Bonsoir BocBoc, le Forum


Voici déjà pour le titre !!! c'est déjà un bon début ...


Bon allez bonne soirée
@+Thierry















LOL

Nan je blague, je vais pas partir comme ça !! lol

Pour le reste, voici comme je m'y prendrai

Option Explicit

Sub NamingPlageCreatingFormula()
Dim L As Integer
Dim SheetName As String, DataLocation As String, NamedRange As String

SheetName = "Feuil1"
L = Sheets(SheetName).Range("A65536").End(xlUp).Row
DataLocation = "$A$1:$A$" & L
NamedRange = "Temp"

With ThisWorkbook
.Names.Add Name:=NamedRange, RefersTo:="=" & SheetName & "!" & DataLocation
End With

ActiveCell.Formula = "=ROUNDDOWN((MIN(" & NamedRange & ")),0)"

End Sub

Je pense que ce devrait mieux comme ceci.
Bonne Soirée
@+Thierry
 
B

BocBoc

Guest
Re: Ecrire une Formule référant à une Plage nommée, le tout en VBA

Nouveau Titre :
J' appercois la fin du tunnel ......... 8P

Merci bien @+Thierry, pour ton aide
Je vais pouvoir avancer, en fait c la syntaxe (" + NamedRange + ") qu il me manquait ....
Mais je prends note de la technique!


@+

Ps: Je pense que je risque de poster dans pas trop longtemps :(
 
B

Bocboc

Guest
C'est encore moi.... Il n a pas fallu longtemps.

C'est fois je voudrais attribuer une variable contenant un chiffre à Criteria1
c-a-d:

Selection.AutoFilter Field:=9, Criteria1:="<=10"
a remplacer par
Selection.AutoFilter Field:=9, Criteria1:="<=Toto"
avec Toto = 10

le pb c qu il me renvoie la variable au lieu du contenu...

Arrfff

Merci de votre aide
 
@

@+Thierry

Guest
Bonsoir BocBoc, le Forum

En programmation on ne "Blouze" pas.... Et si tu trouves VBA "chiant" tu n'iras pas bien loin car c'est à force de patience et nuits blanches que je sais le peu que je sais.

Cette syntax devrait mieux passer :

Sub AutoFilterVBA()
Dim Toto As Byte '<<< Jusqu'à 255, sinon Integer

Toto = 10
Selection.AutoFilter Field:=9, Criteria1:="<=" & Toto

End Sub

Bonne Soirée
@+Thierry
 
@

@+Thierry

Guest
Bonsoir BocBoc, le Forum

Mais si celà fonctionne, j'ai testé (comme tout ce que je poste ici, sinon je l'annonce "sans test")....

Alors soit tu n'as pas des valeurs numriques dans le neucième champs, soit tu as vraiment un gros problème soit d'Excel soit de compréhension dans mes propos...

As-u au moins du numérique dans la neuvième colonne ?.... Qui et quoi "il ne l accepte pas" ?

Ne jamais baisser les bras en VBA !!!

Bonne Soirée
@+Thierry
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 184
dernier inscrit
Di Martino