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

type range dans macro word

4 réponses
Avatar
Jean-Luc CAPEL
Bonjour à tous,
J'ai créé une macro sous Word pour modifier un tableau Excel sur un document
Word actif.
Comment dois je déclarer une variable Range pour manipuler les cellules du
tableau.
La macro word n'accepte pas la déclaration suivante
dim c as range
je crois qu'elle pense que c'est un objet word de type Range (zone contigue
dans un document word)
Comment lui exprimer que Range fait parti de la biblio d'excel.
Salutations
JLuc

4 réponses

Avatar
papou
Bonjour
Oui parce que Range est aussi une expression VBA dans Word.
Si objxl déclaré As Excel.Application ou équivalent :
Dim c As objxl.Range

Cordialement
Pascal

"Jean-Luc CAPEL" a écrit dans le message de
news:
Bonjour à tous,
J'ai créé une macro sous Word pour modifier un tableau Excel sur un
document

Word actif.
Comment dois je déclarer une variable Range pour manipuler les cellules du
tableau.
La macro word n'accepte pas la déclaration suivante
dim c as range
je crois qu'elle pense que c'est un objet word de type Range (zone
contigue

dans un document word)
Comment lui exprimer que Range fait parti de la biblio d'excel.
Salutations
JLuc




Avatar
Jean-Luc CAPEL
Merci pour ta réponse
mais je n'ai pas déclaré d'objet Excel
Voici ma proc dans un module Word

Sub InitTabExcel()

Dim c As Range

' J'active mon tableau de cette manière
' Je ne sais pas s'il y a mieux pour détecter un tableau
' Excel dans un document Word
With ActiveDocument.InlineShapes(1)

.Activate

With .OLEFormat.Object.Worksheets(1)

' Recherche la 1ère cellule vide de la colonne 1
For Each c In .Columns(1).Cells
If c.Value = "" Then
Exit For
End If
Next c

End With
End With
End Sub

----- Original Message -----
From: "papou" <cestpasbonpapou@çanonplus44.fr>
Newsgroups: microsoft.public.fr.excel
Sent: Thursday, September 23, 2004 3:39 PM
Subject: Re: type range dans macro word


Bonjour
Oui parce que Range est aussi une expression VBA dans Word.
Si objxl déclaré As Excel.Application ou équivalent :
Dim c As objxl.Range

Cordialement
Pascal

"Jean-Luc CAPEL" a écrit dans le message de
news:
Bonjour à tous,
J'ai créé une macro sous Word pour modifier un tableau Excel sur un
document

Word actif.
Comment dois je déclarer une variable Range pour manipuler les cellules
du


tableau.
La macro word n'accepte pas la déclaration suivante
dim c as range
je crois qu'elle pense que c'est un objet word de type Range (zone
contigue

dans un document word)
Comment lui exprimer que Range fait parti de la biblio d'excel.
Salutations
JLuc








Avatar
papou
Oui effectivement
Dans ces conditions laisse tomber la déclaration et essaie le code.
Cordialement
Pascal

"Jean-Luc CAPEL" a écrit dans le message de
news:
Merci pour ta réponse
mais je n'ai pas déclaré d'objet Excel
Voici ma proc dans un module Word

Sub InitTabExcel()

Dim c As Range

' J'active mon tableau de cette manière
' Je ne sais pas s'il y a mieux pour détecter un tableau
' Excel dans un document Word
With ActiveDocument.InlineShapes(1)

.Activate

With .OLEFormat.Object.Worksheets(1)

' Recherche la 1ère cellule vide de la colonne 1
For Each c In .Columns(1).Cells
If c.Value = "" Then
Exit For
End If
Next c

End With
End With
End Sub

----- Original Message -----
From: "papou" <cestpasbonpapou@çanonplus44.fr>
Newsgroups: microsoft.public.fr.excel
Sent: Thursday, September 23, 2004 3:39 PM
Subject: Re: type range dans macro word


Bonjour
Oui parce que Range est aussi une expression VBA dans Word.
Si objxl déclaré As Excel.Application ou équivalent :
Dim c As objxl.Range

Cordialement
Pascal

"Jean-Luc CAPEL" a écrit dans le message de
news:
Bonjour à tous,
J'ai créé une macro sous Word pour modifier un tableau Excel sur un
document

Word actif.
Comment dois je déclarer une variable Range pour manipuler les
cellules



du
tableau.
La macro word n'accepte pas la déclaration suivante
dim c as range
je crois qu'elle pense que c'est un objet word de type Range (zone
contigue

dans un document word)
Comment lui exprimer que Range fait parti de la biblio d'excel.
Salutations
JLuc












Avatar
Joel
Bonsoir,

En fait, il semble que tu utilise un objet Excel créé dans le document Word.

Ne te pose pas trop de question dans ce cas, déclare ta variable :

Dim c as Variant 'à la place de Range

et çà ira très bien ...

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"Jean-Luc CAPEL" a écrit dans le message de
news:
Merci pour ta réponse
mais je n'ai pas déclaré d'objet Excel
Voici ma proc dans un module Word

Sub InitTabExcel()

Dim c As Range

' J'active mon tableau de cette manière
' Je ne sais pas s'il y a mieux pour détecter un tableau
' Excel dans un document Word
With ActiveDocument.InlineShapes(1)

.Activate

With .OLEFormat.Object.Worksheets(1)

' Recherche la 1ère cellule vide de la colonne 1
For Each c In .Columns(1).Cells
If c.Value = "" Then
Exit For
End If
Next c

End With
End With
End Sub

----- Original Message -----
From: "papou" <cestpasbonpapou@çanonplus44.fr>
Newsgroups: microsoft.public.fr.excel
Sent: Thursday, September 23, 2004 3:39 PM
Subject: Re: type range dans macro word


Bonjour
Oui parce que Range est aussi une expression VBA dans Word.
Si objxl déclaré As Excel.Application ou équivalent :
Dim c As objxl.Range

Cordialement
Pascal

"Jean-Luc CAPEL" a écrit dans le message de
news:
Bonjour à tous,
J'ai créé une macro sous Word pour modifier un tableau Excel sur un
document

Word actif.
Comment dois je déclarer une variable Range pour manipuler les
cellules



du
tableau.
La macro word n'accepte pas la déclaration suivante
dim c as range
je crois qu'elle pense que c'est un objet word de type Range (zone
contigue

dans un document word)
Comment lui exprimer que Range fait parti de la biblio d'excel.
Salutations
JLuc