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

copie de colonne de x caractère

4 réponses
Avatar
BntMICHEL
Bonjour,

je bloque sur un problème.

je souhaiterais par code vba copier une colonne qui comporte 35 caractères
sur chaque celulle et coller les 30 permiers caractère de chaque celulle dans
un autre classeur .

Je vous remercie

Cordialement
BntMICHEL

4 réponses

Avatar
Daniel.C
Bonsoir.
Essaie :

Sub test()
Dim c As Range, sh As Worksheet
Set sh = ThisWorkbook.Sheets("Feuil1")
With Workbooks("Classeur3").Sheets("Feuil1")
For Each c In sh.Range("A1", sh.Range("A65536").End(xlUp))
.Cells(c.Row, 1) = Left(c, 30)
Next
End With
End Sub

Cordialement.
Daniel
"BntMICHEL" a écrit dans le message de
news:
Bonjour,

je bloque sur un problème.

je souhaiterais par code vba copier une colonne qui comporte 35 caractères
sur chaque celulle et coller les 30 permiers caractère de chaque celulle
dans
un autre classeur .

Je vous remercie

Cordialement
BntMICHEL


Avatar
Ellimac
Bonjour,

Ci-joint un bout de code qui copie la feuille1 et qui ne conserve que les 30
1ers caractères de la colonne A.

Sub Toto()
Sheets("Feuil1").Copy
Range("A1").EntireColumn.Select
Selection.TextToColumns Destination:=Range("A1"),
DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(30, 9)),
TrailingMinusNumbers:=True
Range("A1").Select
End Sub


Camille


Bonjour,

je bloque sur un problème.

je souhaiterais par code vba copier une colonne qui comporte 35 caractères
sur chaque celulle et coller les 30 permiers caractère de chaque celulle dans
un autre classeur .

Je vous remercie

Cordialement
BntMICHEL


Avatar
BntMICHEL
je vous remercie de répondre aussi rapidement.
cependant quand j éxécute votres code il ne me copie pas les celulles où il
y a plus de 30caracteres hors je voudrais qu il me découpe que les 30 premier
caractères.

je vous remercie.

Cordialement
BntMICHEL



Bonsoir.
Essaie :

Sub test()
Dim c As Range, sh As Worksheet
Set sh = ThisWorkbook.Sheets("Feuil1")
With Workbooks("Classeur3").Sheets("Feuil1")
For Each c In sh.Range("A1", sh.Range("A65536").End(xlUp))
.Cells(c.Row, 1) = Left(c, 30)
Next
End With
End Sub

Cordialement.
Daniel
"BntMICHEL" a écrit dans le message de
news:
Bonjour,

je bloque sur un problème.

je souhaiterais par code vba copier une colonne qui comporte 35 caractères
sur chaque celulle et coller les 30 permiers caractère de chaque celulle
dans
un autre classeur .

Je vous remercie

Cordialement
BntMICHEL







Avatar
BntMICHEL
Bonjour

je remercie de votre rapidité.
J ai bien tester cotre code cela fonctionne. sauf que dans le nouveau
classeur change totalement le format des celulles et donc mes données sont
mal traiter par la suite. peut on faire quelques choses?

cordialement

BntMICHEL


Bonjour,

Ci-joint un bout de code qui copie la feuille1 et qui ne conserve que les 30
1ers caractères de la colonne A.

Sub Toto()
Sheets("Feuil1").Copy
Range("A1").EntireColumn.Select
Selection.TextToColumns Destination:=Range("A1"),
DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(30, 9)),
TrailingMinusNumbers:=True
Range("A1").Select
End Sub


Camille


Bonjour,

je bloque sur un problème.

je souhaiterais par code vba copier une colonne qui comporte 35 caractères
sur chaque celulle et coller les 30 permiers caractère de chaque celulle dans
un autre classeur .

Je vous remercie

Cordialement
BntMICHEL