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

Problème de mise en forme

8 réponses
Avatar
Alex
Bonjour =E0 tous,

J'ai un fichier avec un nombre de ligne "variable" avec 42 colonnes,
et souhaiterai faire un onglet suppl=E9mentaire reprenant le fichier
d'origine mais en condens=E9 en conservant uniquement 2 colonnes, pour
cela aucun probl=E8me.

Mon probl=E8me est sur la mise en forme des deux colonnes que je
conserve et m'en explique :

L'ensemble de mes lignes "variable" sont sur 2 colonnes A et B, Je
souhaiterai faire une mise en forme automatique afin que toutes les
"x" lignes n'ex=E8de pas 16 cm de hauteur lors de l'impression, et que
ma suite de lignes se positionnent en C et D jusqu'=E0 16 cm de hauteur,
puis en E et F, et ainsi de suite jusqu'=E0 la derni=E8re ligne . Ainsi
j'obtiendrais le plus d'information sur une meme feuille de format A4
lors de l'impression.

Esperant que mon explication de probl=E8me de mise en forme soit
suffissement claire, afin que vous puissiez m'aider.

Je reste =E0 votre disposition pour plus d'info si besoin.

Je vous remercie par avnce de votre aide.

Bien Cordialement.
Alex

8 réponses

Avatar
michel ou sam
Bonjour,
si j'ai bien compris, tu veux imprimer tes 2 colonnes A et B avec la suite
en haut de la page et décalage à droite sur cette même page
ne serait il pas plus simple de prévoir un onglet "impression" correspondant
à l'impression en format A4 paysage ?
c'est à dire
A2 = Feuil1!A2
jusqu'à A(n)
idem pour B2

puis C2 = Feuil1!A(n+1)
idem pour D2

puis E2þuil1!A(2n+1)
idem pour F2

etc

Michel

"Alex" a écrit dans le message de news:

Bonjour à tous,

J'ai un fichier avec un nombre de ligne "variable" avec 42 colonnes,
et souhaiterai faire un onglet supplémentaire reprenant le fichier
d'origine mais en condensé en conservant uniquement 2 colonnes, pour
cela aucun problème.

Mon problème est sur la mise en forme des deux colonnes que je
conserve et m'en explique :

L'ensemble de mes lignes "variable" sont sur 2 colonnes A et B, Je
souhaiterai faire une mise en forme automatique afin que toutes les
"x" lignes n'exède pas 16 cm de hauteur lors de l'impression, et que
ma suite de lignes se positionnent en C et D jusqu'à 16 cm de hauteur,
puis en E et F, et ainsi de suite jusqu'à la dernière ligne . Ainsi
j'obtiendrais le plus d'information sur une meme feuille de format A4
lors de l'impression.

Esperant que mon explication de problème de mise en forme soit
suffissement claire, afin que vous puissiez m'aider.

Je reste à votre disposition pour plus d'info si besoin.

Je vous remercie par avnce de votre aide.

Bien Cordialement.
Alex
Avatar
Alex
Bonjour Michel,

Oui c'est bien cela, je désire imprimer mes deux colonnes A et B avec
k
Avatar
Alex
Bonjour Michel,

Oui c'est bien cela. Sur un nouvel onglet, je veux imprimer mes 2
colonnes A et B avec la suite
en haut de la page (tous les 16 cm d'hauteur d'impression) et de
decaler sur la droite sur cette meme page les lignes restantes, et
ceux jusqu'à la dernière ligne, et ainsi obtenir mes deux colonnes,
sur X colonnes. Je sais que 16 cm correspond à 34 lignes. Donc toutes
les 34 lignes, je décale sur la droite de cette meme page les lignes
restantes.
Merci par avance de ton aide.
Bien cordialement.
Alex
Avatar
Alex
Re :

Il semblerait que mon second message ne soit pas passé, mais
l'explication proposé me semble correcte, voici ce que j'ai écrit,
peut ête cela sera plus claire :

Sub MEF()
Dim i As Integer
Dim nbligne As Long

nbligne = Range("A1").CurrentRegion.Rows.Count
MsgBox nbligne


Range("A1").Select
ActiveCell.Offset(34, 0).Range("A1").Select
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Cut
Range("C1").Select
ActiveSheet.Paste
Range("C1").Select
ActiveCell.Offset(34, 0).Range("A1").Select
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Cut
Range("E1").Select
ActiveSheet.Paste
Range("E1").Select
et je continue la procédure
End Sub

Mais comme mon nombre de lignes est variable, je ne peux pas faire
ainsi, mais sinon le principe est le bon.

Merci encore par avance de votre aide.
Cordialement.
Alex
Avatar
DanielCo
Bonjour,
Peut-être comme ceci :

Sub MEF1()
Dim Source As Worksheet, Col As Integer
Dim Ligne As Integer
Sheets.Add.Name = "Imprim"
With Sheets("Source")
Ligne = .[A:B].Find("*", , , , xlByRows, xlPrevious).Row
Col = 1
For i = 1 To Ligne Step 34
Col = Col + 2
.Cells(i, 1).Resize(34, 2).Copy Cells(1, Col)
Next i
End With
With Sheets("Imprim")
.PrintOut
.Delete
End With
End Sub

Daniel


Re :

Il semblerait que mon second message ne soit pas passé, mais
l'explication proposé me semble correcte, voici ce que j'ai écrit,
peut ête cela sera plus claire :

Sub MEF()
Dim i As Integer
Dim nbligne As Long

nbligne = Range("A1").CurrentRegion.Rows.Count
MsgBox nbligne


Range("A1").Select
ActiveCell.Offset(34, 0).Range("A1").Select
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Cut
Range("C1").Select
ActiveSheet.Paste
Range("C1").Select
ActiveCell.Offset(34, 0).Range("A1").Select
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Cut
Range("E1").Select
ActiveSheet.Paste
Range("E1").Select
et je continue la procédure
End Sub

Mais comme mon nombre de lignes est variable, je ne peux pas faire
ainsi, mais sinon le principe est le bon.

Merci encore par avance de votre aide.
Cordialement.
Alex
Avatar
Alex
Re bonjour à tous,

Je pense avoir réussi ma mise en forme automatique sous forme de
boucle :

Sub MEF()
Dim i As Integer
Dim nbligne As Long
Dim j As Integer

j = 1
'Compter les lignes
nbligne = Range("A1").CurrentRegion.Rows.Count
' MsgBox nbligne
Range("A1").Select
For i = 1 To nbligne Step 1
'Positionnenement sur la 35eme ligne
ActiveCell.Offset(34, 0).Range("A1").Select
If ActiveCell.Value = "" Then
Exit For
Else
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Cut
ActiveCell.Offset(-34, 0).Range("A1").Select
j = 2
ActiveCell.Offset(0, j).Range("A1").Select
ActiveSheet.Paste
End If
Next i
End Sub

Cordialement.
Alex
Avatar
michel ou sam
Bonjour, si on est pas pressé, on peut aussi s'amuser à faire ceci, cellule
par cellule
(l'amusement, c'était de gérer le modulo 34)

Sub MEF()
Dim i As Integer
Dim nbligne As Long
Dim col As Integer
Dim ligne As Integer

'Compter les lignes
nbligne = Range("A1").CurrentRegion.Rows.Count

'déplacer les cellules
For i = 35 To nbligne
col = 2 * Int((i - 1) / 34)
ligne = i - 17 * col
Cells(i, 1).Cut Destination:Îlls(ligne, col + 1)
Cells(i, 2).Cut Destination:Îlls(ligne, col + 2)
Next i

End Sub

Michel

"Alex" a écrit dans le message de news:

Re bonjour à tous,

Je pense avoir réussi ma mise en forme automatique sous forme de
boucle :

Sub MEF()
Dim i As Integer
Dim nbligne As Long
Dim j As Integer

j = 1
'Compter les lignes
nbligne = Range("A1").CurrentRegion.Rows.Count
' MsgBox nbligne
Range("A1").Select
For i = 1 To nbligne Step 1
'Positionnenement sur la 35eme ligne
ActiveCell.Offset(34, 0).Range("A1").Select
If ActiveCell.Value = "" Then
Exit For
Else
ActiveCell.Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Cut
ActiveCell.Offset(-34, 0).Range("A1").Select
j = 2
ActiveCell.Offset(0, j).Range("A1").Select
ActiveSheet.Paste
End If
Next i
End Sub

Cordialement.
Alex
Avatar
PierreB
Le 22/08/2011 11:33, Alex a écrit :
Bonjour à tous,

J'ai un fichier avec un nombre de ligne "variable" avec 42 colonnes,
et souhaiterai faire un onglet supplémentaire reprenant le fichier
d'origine mais en condensé en conservant uniquement 2 colonnes, pour
cela aucun problème.

Mon problème est sur la mise en forme des deux colonnes que je
conserve et m'en explique :

L'ensemble de mes lignes "variable" sont sur 2 colonnes A et B, Je
souhaiterai faire une mise en forme automatique afin que toutes les
"x" lignes n'exède pas 16 cm de hauteur lors de l'impression, et que
ma suite de lignes se positionnent en C et D jusqu'à 16 cm de hauteur,
puis en E et F, et ainsi de suite jusqu'à la dernière ligne . Ainsi
j'obtiendrais le plus d'information sur une meme feuille de format A4
lors de l'impression.

Esperant que mon explication de problème de mise en forme soit
suffissement claire, afin que vous puissiez m'aider.

Je reste à votre disposition pour plus d'info si besoin.

Je vous remercie par avnce de votre aide.

Bien Cordialement.
Alex


Bonjour,

Et bien, il me semble que l'onglet "2" pourrait être directement
construit avec 16 lignes.

Pour cela, il suffit que la 1ere ligne de la colonne "C" soit identique
à A17 et ainsi de suite.

Pour faire cela, se positionner sur "C1" de l'onglet 2 --> taper sur le
signe "=" et aller se positionner sur A17 de l'onglet 1 --> valider ...etc

Pierre