La fonction split qui permet de scinder une chaine alphanumérique pour
obtenir un tableau existe pour Word 2000, 2002 et 2003 mais pas pour la
version 97.
Je termine actuellement une macro qui utilise cette fonction. Si elle
fonctionne pour les versions 2000+, elle est inopéante avec Word 97.
Mon gros problème est celui des tableaux : peut-on les redimensionner à
la volée ?
L'instruction Redim toto(x) As ... ne marche pas car le nombre de
case x doit être un nombre fixé comme 15.
Donc ma stratégie qui consistait à scinder la chaine alphanumérique et à
remplir un tableau avec beaucoup de cases puis à le redimmensionner sur
celles remplies avec Redim Preserve toto(NombreCaseRemplies) ne
marche pas.
Bref, si quelqu'un avait une idée à me proposer...
Précision : la fonction doit renvoyer un tableau contenant autant
d'éléments que la chaine initiale...
Merci par avance !
Est-il possible de définir des tableaux dynamiques ?
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
Hi !
-----Message d'origine----- La fonction split qui permet de scinder une chaine alphanumérique pour
obtenir un tableau existe pour Word 2000, 2002 et 2003 mais pas pour la
version 97. Je termine actuellement une macro qui utilise cette fonction. Si elle
fonctionne pour les versions 2000+, elle est inopéante avec Word 97.
Mon gros problème est celui des tableaux : peut-on les redimensionner à
la volée ? L'instruction Redim toto(x) As ... ne marche pas car le nombre de
case x doit être un nombre fixé comme 15.
Tu tires un peu trop vite pour moi, redim marchait très bien en 97 Il me semble qu'il faut un dim toto() au début et on peut faire des redim toto(n) après. J'ai pas compris ? On parle bien de tableaux en VBA pas de tableaux sur une document word?
Hi !
-----Message d'origine-----
La fonction split qui permet de scinder une chaine
alphanumérique pour
obtenir un tableau existe pour Word 2000, 2002 et 2003
mais pas pour la
version 97.
Je termine actuellement une macro qui utilise cette
fonction. Si elle
fonctionne pour les versions 2000+, elle est inopéante
avec Word 97.
Mon gros problème est celui des tableaux : peut-on les
redimensionner à
la volée ?
L'instruction Redim toto(x) As ... ne marche pas
car le nombre de
case x doit être un nombre fixé comme 15.
Tu tires un peu trop vite pour moi,
redim marchait très bien en 97
Il me semble qu'il faut un
dim toto() au début
et on peut faire des redim toto(n) après.
J'ai pas compris ?
On parle bien de tableaux en VBA pas de tableaux sur une
document word?
-----Message d'origine----- La fonction split qui permet de scinder une chaine alphanumérique pour
obtenir un tableau existe pour Word 2000, 2002 et 2003 mais pas pour la
version 97. Je termine actuellement une macro qui utilise cette fonction. Si elle
fonctionne pour les versions 2000+, elle est inopéante avec Word 97.
Mon gros problème est celui des tableaux : peut-on les redimensionner à
la volée ? L'instruction Redim toto(x) As ... ne marche pas car le nombre de
case x doit être un nombre fixé comme 15.
Tu tires un peu trop vite pour moi, redim marchait très bien en 97 Il me semble qu'il faut un dim toto() au début et on peut faire des redim toto(n) après. J'ai pas compris ? On parle bien de tableaux en VBA pas de tableaux sur une document word?
Pascal Engelmajer
salut, Option Explicit Sub split97(chaine As String, ByRef t()) Dim i As Long chaine = Trim$(chaine) Do Until Trim$(chaine) = "" chaine = Trim$(chaine) & " " t(i) = Trim$(Left$(chaine, InStr(chaine, " "))) chaine = Mid$(chaine, InStr(chaine, " ")) i = i + 1 ReDim Preserve t(i) Loop End Sub Sub test() Dim i As Long Dim t() ReDim t(0) split97 "ma chaine à découper au petits oignons", t For i = 0 To UBound(t) - 1 Debug.Print ">" & t(i) & "<" Next i End Sub -- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel http://www.ilyapa.net/baseExcel "John Wayne" a écrit dans le message de news: #
La fonction split qui permet de scinder une chaine alphanumérique pour obtenir un tableau existe pour Word 2000, 2002 et 2003 mais pas pour la version 97. Je termine actuellement une macro qui utilise cette fonction. Si elle fonctionne pour les versions 2000+, elle est inopéante avec Word 97. Mon gros problème est celui des tableaux : peut-on les redimensionner à la volée ? L'instruction Redim toto(x) As ... ne marche pas car le nombre de case x doit être un nombre fixé comme 15. Donc ma stratégie qui consistait à scinder la chaine alphanumérique et à remplir un tableau avec beaucoup de cases puis à le redimmensionner sur celles remplies avec Redim Preserve toto(NombreCaseRemplies) ne marche pas.
Bref, si quelqu'un avait une idée à me proposer... Précision : la fonction doit renvoyer un tableau contenant autant d'éléments que la chaine initiale...
Merci par avance !
Est-il possible de définir des tableaux dynamiques ?
salut,
Option Explicit
Sub split97(chaine As String, ByRef t())
Dim i As Long
chaine = Trim$(chaine)
Do Until Trim$(chaine) = ""
chaine = Trim$(chaine) & " "
t(i) = Trim$(Left$(chaine, InStr(chaine, " ")))
chaine = Mid$(chaine, InStr(chaine, " "))
i = i + 1
ReDim Preserve t(i)
Loop
End Sub
Sub test()
Dim i As Long
Dim t()
ReDim t(0)
split97 "ma chaine à découper au petits oignons", t
For i = 0 To UBound(t) - 1
Debug.Print ">" & t(i) & "<"
Next i
End Sub
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
http://www.ilyapa.net/baseExcel
"John Wayne" <tanopah.jo@free.fr> a écrit dans le message de news:
#sH5s8iTEHA.3944@tk2msftngp13.phx.gbl...
La fonction split qui permet de scinder une chaine alphanumérique pour
obtenir un tableau existe pour Word 2000, 2002 et 2003 mais pas pour la
version 97.
Je termine actuellement une macro qui utilise cette fonction. Si elle
fonctionne pour les versions 2000+, elle est inopéante avec Word 97.
Mon gros problème est celui des tableaux : peut-on les redimensionner à
la volée ?
L'instruction Redim toto(x) As ... ne marche pas car le nombre de
case x doit être un nombre fixé comme 15.
Donc ma stratégie qui consistait à scinder la chaine alphanumérique et à
remplir un tableau avec beaucoup de cases puis à le redimmensionner sur
celles remplies avec Redim Preserve toto(NombreCaseRemplies) ne
marche pas.
Bref, si quelqu'un avait une idée à me proposer...
Précision : la fonction doit renvoyer un tableau contenant autant
d'éléments que la chaine initiale...
Merci par avance !
Est-il possible de définir des tableaux dynamiques ?
salut, Option Explicit Sub split97(chaine As String, ByRef t()) Dim i As Long chaine = Trim$(chaine) Do Until Trim$(chaine) = "" chaine = Trim$(chaine) & " " t(i) = Trim$(Left$(chaine, InStr(chaine, " "))) chaine = Mid$(chaine, InStr(chaine, " ")) i = i + 1 ReDim Preserve t(i) Loop End Sub Sub test() Dim i As Long Dim t() ReDim t(0) split97 "ma chaine à découper au petits oignons", t For i = 0 To UBound(t) - 1 Debug.Print ">" & t(i) & "<" Next i End Sub -- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel http://www.ilyapa.net/baseExcel "John Wayne" a écrit dans le message de news: #
La fonction split qui permet de scinder une chaine alphanumérique pour obtenir un tableau existe pour Word 2000, 2002 et 2003 mais pas pour la version 97. Je termine actuellement une macro qui utilise cette fonction. Si elle fonctionne pour les versions 2000+, elle est inopéante avec Word 97. Mon gros problème est celui des tableaux : peut-on les redimensionner à la volée ? L'instruction Redim toto(x) As ... ne marche pas car le nombre de case x doit être un nombre fixé comme 15. Donc ma stratégie qui consistait à scinder la chaine alphanumérique et à remplir un tableau avec beaucoup de cases puis à le redimmensionner sur celles remplies avec Redim Preserve toto(NombreCaseRemplies) ne marche pas.
Bref, si quelqu'un avait une idée à me proposer... Précision : la fonction doit renvoyer un tableau contenant autant d'éléments que la chaine initiale...
Merci par avance !
Est-il possible de définir des tableaux dynamiques ?