Je voudrais savoir comment faire en VBA pour :
1) savoir si la cellule courante (activecell) se trouve dans un range de
données externes ou table externe.
2) Si oui, je voudrais récupérer le nom de la table externe dans laquelle
elle se trouve
Attention la table externe n'est pas nécessairement "remplie" (avant
"Actualiser les données") ==> je ne sais pas utiliser la propriété
"CurrentRegion"
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Philippe,
Soit un QueryTable sur la Feuil1 nommé "Denis" Si tu veux savoir si une cellule ou plage quelconque dans la feuille (mon exemple A100) fait parti de la plage de cellules occupées par le QueryTable, essaie ce qui suit :
'------------------- Sub test()
Dim Qt As QueryTable Dim Rg As Range With Worksheets("feuil1") Set Qt = .QueryTables("Denis") Set Rg = .Range("A100") 'à déterminer If Intersect(.Range(Qt.Name), Rg) Is Nothing Then MsgBox Rg.Address & " ne fait pas parti de la " _ & vbCrLf & "plage des données externes" End If End With Set Qt = Nothing : Set Rg = Nothing End Sub '-------------------
N.B : à chaque fois que tu crées un "QueryTable", excel crée un "NOM" (insertion / nom / définir) qui fait référence à la plage de cellules occupées par le QueryTable
"Philippe" a écrit dans le message de news:
Bonjour à tous.
Je voudrais savoir comment faire en VBA pour : 1) savoir si la cellule courante (activecell) se trouve dans un range de données externes ou table externe. 2) Si oui, je voudrais récupérer le nom de la table externe dans laquelle elle se trouve
Attention la table externe n'est pas nécessairement "remplie" (avant "Actualiser les données") ==> je ne sais pas utiliser la propriété "CurrentRegion"
Merci pour votre collaboration, Philippe.
Bonjour Philippe,
Soit un QueryTable sur la Feuil1 nommé "Denis"
Si tu veux savoir si une cellule ou plage quelconque
dans la feuille (mon exemple A100) fait parti
de la plage de cellules occupées par le QueryTable,
essaie ce qui suit :
'-------------------
Sub test()
Dim Qt As QueryTable
Dim Rg As Range
With Worksheets("feuil1")
Set Qt = .QueryTables("Denis")
Set Rg = .Range("A100") 'à déterminer
If Intersect(.Range(Qt.Name), Rg) Is Nothing Then
MsgBox Rg.Address & " ne fait pas parti de la " _
& vbCrLf & "plage des données externes"
End If
End With
Set Qt = Nothing : Set Rg = Nothing
End Sub
'-------------------
N.B : à chaque fois que tu crées un "QueryTable", excel crée
un "NOM" (insertion / nom / définir) qui fait référence à la
plage de cellules occupées par le QueryTable
"Philippe" <Philippe@discussions.microsoft.com> a écrit dans le message de news:
D185A3CE-0C47-4D93-91FC-8F4C1BB70F9B@microsoft.com...
Bonjour à tous.
Je voudrais savoir comment faire en VBA pour :
1) savoir si la cellule courante (activecell) se trouve dans un range de
données externes ou table externe.
2) Si oui, je voudrais récupérer le nom de la table externe dans laquelle
elle se trouve
Attention la table externe n'est pas nécessairement "remplie" (avant
"Actualiser les données") ==> je ne sais pas utiliser la propriété
"CurrentRegion"
Soit un QueryTable sur la Feuil1 nommé "Denis" Si tu veux savoir si une cellule ou plage quelconque dans la feuille (mon exemple A100) fait parti de la plage de cellules occupées par le QueryTable, essaie ce qui suit :
'------------------- Sub test()
Dim Qt As QueryTable Dim Rg As Range With Worksheets("feuil1") Set Qt = .QueryTables("Denis") Set Rg = .Range("A100") 'à déterminer If Intersect(.Range(Qt.Name), Rg) Is Nothing Then MsgBox Rg.Address & " ne fait pas parti de la " _ & vbCrLf & "plage des données externes" End If End With Set Qt = Nothing : Set Rg = Nothing End Sub '-------------------
N.B : à chaque fois que tu crées un "QueryTable", excel crée un "NOM" (insertion / nom / définir) qui fait référence à la plage de cellules occupées par le QueryTable
"Philippe" a écrit dans le message de news:
Bonjour à tous.
Je voudrais savoir comment faire en VBA pour : 1) savoir si la cellule courante (activecell) se trouve dans un range de données externes ou table externe. 2) Si oui, je voudrais récupérer le nom de la table externe dans laquelle elle se trouve
Attention la table externe n'est pas nécessairement "remplie" (avant "Actualiser les données") ==> je ne sais pas utiliser la propriété "CurrentRegion"