Не уверен, правильно ли я ответил на ваши комментарии, но это может сработать для вас. Я сделал поддельный набор данных:
Код, который я использовал:
Sub test()
Dim MiMatriz As Variant
Dim i As Long
Dim ZZ As Long
MiMatriz = Range("A3:A8").Value
For i = 1 To UBound(MiMatriz) Step 1
For ZZ = 0 To 3 Step 1
If ZZ > 0 Then
Debug.Print "[" & Trim(Split(Split(MiMatriz(i, 1), "[")(ZZ), "]")(0)) & "]"
Else
Debug.Print Trim(Split(Split(MiMatriz(i, 1), "[")(ZZ), "]")(0))
End If
Next ZZ
Next i
Erase MiMatriz
End Sub
Вывод, который я получаю:
Fonctionnel
[A/sentence 1]
[B/sentence 2]
[C/sentence 3]
Fonctionnel
[A/sentence 4]
[B/sentence 5]
[C/sentence 6]
Securite
[A/sentence 7]
[B/sentence 8]
[C/sentence 9]
Fonctionnel
[A/sentence 10]
[B/sentence 11]
[C/sentence 12]
Technique
[A/sentence 13]
[B/sentence 14]
[C/sentence 15]
Securite
[A/sentence 16]
[B/sentence 17]
[C/sentence 18]
В любом случае, я думаю, было бы полезно, если бы вы могли опубликовать пример реальных данных (ваши данные).
Надеюсь, это поможет.
ОБНОВЛЕНИЕ: Похоже, что OP нужен только текст в скобках, поэтому нам нужно адаптировать ZZ
L oop:
Sub test()
Dim MiMatriz As Variant
Dim i As Long
Dim ZZ As Long
MiMatriz = Range("A3:A8").Value
For i = 1 To UBound(MiMatriz) Step 1
For ZZ = 1 To 3 Step 1
Debug.Print "[" & Trim(Split(Split(MiMatriz(i, 1), "[")(ZZ), "]")(0)) & "]"
Next ZZ
Next i
Erase MiMatriz
End Sub
Вывод этого обновленного кода:
[A/sentence 1]
[B/sentence 2]
[C/sentence 3]
[A/sentence 4]
[B/sentence 5]
[C/sentence 6]
[A/sentence 7]
[B/sentence 8]
[C/sentence 9]
[A/sentence 10]
[B/sentence 11]
[C/sentence 12]
[A/sentence 13]
[B/sentence 14]
[C/sentence 15]
[A/sentence 16]
[B/sentence 17]
[C/sentence 18]