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

Création de feuilles sous condition

3 réponses
Avatar
Gildo
Bonjour,

Petit casse-tête :
J’ai une feuille avec des colonnes de A à AC.
Je dois créer autant de feuilles que de colonnes ce de C à AC en reprenant
toujours la colonne B
Exemple : Feuil 2 B et C , Feuil 3 B et D et ainsi de suite .
De plus je ne dois transférer que les lignes des colonnes de C a AC
renseignées par un ‘1 ‘
Voyez-vous une solution ?

3 réponses

Avatar
Daniel
Bonjour.
Tu donnes peu d'indication sur la position du "1" et de la position des
colonnes sur les feuilles. J'ai considéré que le "1" était sur la ligne 1.
Essaie :

Sub test()
Dim ws As Worksheet
Set ws = Sheets(1)
For i = 3 To Range("AC1").Column
If ws.Cells(1, i) = 1 Then
Sheets.Add after:=Sheets(Sheets.Count)
ws.Cells(1, 2).EntireColumn.Copy Cells(1, 1)
ws.Cells(1, i).EntireColumn.Copy Cells(1, 2)
End If
Next i
End Sub

Cordialement.
Daniel
"Gildo" a écrit dans le message de news:

Bonjour,

Petit casse-tête :
J'ai une feuille avec des colonnes de A à AC.
Je dois créer autant de feuilles que de colonnes ce de C à AC en reprenant
toujours la colonne B
Exemple : Feuil 2 B et C , Feuil 3 B et D et ainsi de suite .
De plus je ne dois transférer que les lignes des colonnes de C a AC
renseignées par un '1 '
Voyez-vous une solution ?



Avatar
Elliac
Bonjour,

Sub Macro1()
For cpt = 3 To 29
On Error Resume Next
Worksheets("Feuil1").ShowAllData
Range("a1").AutoFilter Field:=cpt, Criteria1:="1"
Sheets.Add
ActiveSheet.Name = cpt
Sheets("Feuil1").Select
Range(Columns(2).Address & "," & Columns(cpt).Address).Copy
Sheets(ActiveSheet.Index - 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("A1").Select
Sheets("Feuil1").Select
Next
End Sub

Camille

"Gildo" wrote:

Bonjour,

Petit casse-tête :
J’ai une feuille avec des colonnes de A à AC.
Je dois créer autant de feuilles que de colonnes ce de C à AC en reprenant
toujours la colonne B
Exemple : Feuil 2 B et C , Feuil 3 B et D et ainsi de suite .
De plus je ne dois transférer que les lignes des colonnes de C a AC
renseignées par un ‘1 ‘
Voyez-vous une solution ?



Avatar
Gildo
Bravo ça marche impec ...
Merci à vous deux pour votre aide


Bonjour,

Sub Macro1()
For cpt = 3 To 29
On Error Resume Next
Worksheets("Feuil1").ShowAllData
Range("a1").AutoFilter Field:=cpt, Criteria1:="1"
Sheets.Add
ActiveSheet.Name = cpt
Sheets("Feuil1").Select
Range(Columns(2).Address & "," & Columns(cpt).Address).Copy
Sheets(ActiveSheet.Index - 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("A1").Select
Sheets("Feuil1").Select
Next
End Sub

Camille

"Gildo" wrote:

Bonjour,

Petit casse-tête :
J’ai une feuille avec des colonnes de A à AC.
Je dois créer autant de feuilles que de colonnes ce de C à AC en reprenant
toujours la colonne B
Exemple : Feuil 2 B et C , Feuil 3 B et D et ainsi de suite .
De plus je ne dois transférer que les lignes des colonnes de C a AC
renseignées par un ‘1 ‘
Voyez-vous une solution ?