Bonjour,
En VBA est-il possible de faire référence à une cellule nommée ?
Dans mon code j'ai par exemple:
je voudrai le remplacer parCode:Range("L3").Value
Code:Range("MonParametre").Value
C'est possible ou pas ?
Merci. :?
Version imprimable
Bonjour,
En VBA est-il possible de faire référence à une cellule nommée ?
Dans mon code j'ai par exemple:
je voudrai le remplacer parCode:Range("L3").Value
Code:Range("MonParametre").Value
C'est possible ou pas ?
Merci. :?
Bonjour
A tu essayé?
Tu auras la réponse
Bonjour.
Si c'est un nom étendu au classeur, je te proposeSi le nom défini est limité à une feuilleCode:ThisWorkbook.Names("MonNomDefini").RefersToRange.Value
Cordialement,Code:ThisWorkbook.Worksheets("NomFeuille").Names("MonNomDefini").RefersToRange.Value
PGZ
Merci à vous deux, oui j'avais fais des essais mais sans succès, mais avec
ça fonctionne très bien.Code:ThisWorkbook.Names("MonNomDefini").RefersToRange.Value
Bonne soirée. :ccool:
Bonsoir,
Je reviens vers vous car je fais des essais pour affiner mon programme, en effet je souhaite avec
faire référence à deux colonnes avant sur la même ligne, mais je ne trouve pas .Code:Range("L3").Value
Je voudrai que la date en colonne I soit automatiquement renvoyée sur la même ligne en colonne K sous condition que la colonne N contienne le code "achat" toujours sur la même ligne, mais en cas d'erreur de saisie "Vente" par exemple que cette date soit vide pour en saisir une autre.
je saisie mes ventes de vêtements ligne par ligne.
Comment pratiquer ?
Merci.
Philippe.
Bonsoir.
Ce n'est pas le même sujet et tu aurais dû ouvrir une nouvelle discussion.
Si tu as beaucoup d'opérations de ce type sur ta feuille, tu pourrais choisir de faire un formulaire pour renseigner ligne par ligne.
Sinon, dans la feuille tu peux traiter sur l'évènement Change, comme cecisous rserve de vérification des valeurs d'offset.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 9 Then 'colonne I If Target.Offset(, 5).Value = "achat" Then Target.Offset(, 2).Value = Target.Value 'si N = "achat" alors K = I ElseIf Target.Column = 14 Then 'colonne N If Target.Value = "achat" Then 'si N = "achat" Target.Offset(, -3).Value = Target.Offset(, -5).Value 'K = I Else Target.Offset(, -3).Value = Empty 'K = Empty End If End If End Sub
Cordialement,
PGZ
Merci, je vais travailler sur ton code pour l'étudier.
@+ :ccool:
Bonsoir , je pense que je n'ai pas les bonnes infos et du coup je n'arrive pas à utiliser vos différentes réponses pour faire les Entêtes/Pieddepage automatiques
j'ai essayé 2 types d'affectation pour récupérer des valeurs par nom de cellules et rien ne fonctionne , est-ce que j'ai oublié quelque chose ?
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 Sub toutes_feuilles() Dim x As Byte Dim EGH As String Dim EGB As String Dim EMB As String Dim EDH As String Dim EDB As String 'EGH = ThisWorkbook.Worksheets("modification list").Names("EnteteGaucheHaut").RefersToRange.Value 'EGB = ThisWorkbook.Worksheets("modification list").Names("EnteteGaucheBas").RefersToRange.Value 'EDH = ThisWorkbook.Worksheets("modification list").Names("EnteteDroitHaut").RefersToRange.Value 'EDB = ThisWorkbook.Worksheets("modification list").Names("EnteteDroitBas").RefersToRange.Value 'EMH = ThisWorkbook.Worksheets("modification list").Names("EnteteMillieuBas").RefersToRange.Value EGH = ThisWorkbook.Worksheets("2").Range("EnteteGaucheHaut").Value EGB = ThisWorkbook.Worksheets("2").Range("EnteteGaucheBas").Value EDH = ThisWorkbook.Worksheets("2").Range("EnteteDroitHaut").Value EDB = ThisWorkbook.Worksheets("2").Range("EnteteDroitBas").Value EMH = ThisWorkbook.Worksheets("2").Range("EnteteMillieuBas").Value For x = 1 To Sheets.Count With Sheets(x).PageSetup 'en-tête de page .LeftHeader = EGH & Chr(10) & EGB '<-- contenu de la cellule EnteteGaucheHaut sur feuille 2 (sans précision = style par défaut) .CenterHeader = EMH '"&A" & Chr(10) & "&F" <-- nom feuille + saut de ligne + nom fichier .RightHeader = EDH & Chr(10) & EDB 'pied de page .LeftFooter = "&G&10&""Arial""&F" 'nom fichier .CenterFooter = "&G&10&""Arial""&D / &T" '<-- date / heure .RightFooter = "&G&10&""Arial""&P/&N" '<-- numéro de page / nombre de pages End With Next x End Sub