bonjour
je suis une prof de dessin
j'ai une fiche éduc nat à remplir
pour chaque élève de Terminale BAC, elle se compose de 3 tableaux de 5 , 5 et 3 lignes
je dois mettre des croix comme des -, =, + et leur "donner un total sur 6, puis 8 et 8.
Mais en fait , les croix ont une valeur masquée puis que leur addition finale est sur ... 20
j'ai demandé à chat GPT de m'écrire la "macro" mais je ne sais pas la mettre en oeuvre - je comprends un peu le code et je crois avoir bien expliqué mais je ne sais pas finaliser
voilà la discut avec la machine
ma question
sous excel, quelle macro me permet d'attribuer des valeurs à des cases si je les coche avec un x
et j'ai besoin d'avoir des valeurs différentes en fonction des colonnes
car j'ai 3 tableaux différents
en outre, ensuite, je dois dupliquer la feuille par le nombre d'élèves dont j'ai la liste excel ( NOM+prénom dans la même case
euh, je sais séparer, inclus qd les noms sont double ou triples ( noms portugais pas ex)
j'aimerais 1 - que les feuilles aient les noms de la liste
et que la case fusionnée C-DEF se remplisse automatiquement avec le NOM prénom de l'élève
de la feuille 1 du fichier
voila la réponse
Si vous souhaitez attribuer des valeurs différentes en fonction des colonnes, vous pouvez utiliser une approche similaire en ajustant la macro VBA. Voici un exemple de code qui illustre cette situation :
vbaCopy code
Sub AttribuerValeurs()
Dim cell As Range
For Each cell In Selection
If cell.Value = "x" Then ' Vérifie si la cellule contient "x"
' Attribue la valeur en fonction de la colonne
Select Case cell.Column
Case 1 ' Colonne A
cell.Offset(0, 1).Value = "Valeur Colonne A"
Case 2 ' Colonne B
cell.Offset(0, 1).Value = "Valeur Colonne B"
Case 3 ' Colonne C
cell.Offset(0, 1).Value = "Valeur Colonne C"
' Ajoutez des cas supplémentaires pour d'autres colonnes si nécessaire
Case Else
cell.Offset(0, 1).Value = "" ' Réinitialise la valeur de la cellule
End Select
Else
cell.Offset(0, 1).Value = "" ' Réinitialise la valeur de la cellule
End If
Next cell
End Sub
Dans cet exemple, nous utilisons l'instruction Select Case pour attribuer différentes valeurs en fonction de la colonne où se trouve la cellule cochée. Vous pouvez ajuster les valeurs attribuées en modifiant les lignes correspondant à chaque cas (Case).
Assurez-vous de sélectionner la plage de cellules appropriée avant d'exécuter la macro, et que vous avez activé l'onglet "Développeur" et l'éditeur VBA comme indiqué dans ma réponse précédente.
j'ai une page de 30 ligne de prénom une page excel à remplir pour chaque ligne dupliquer une page excel pour chaque ligne de nom+ prénom,
Sub DupliquerPages()
Dim wsSource As Worksheet
Dim wsNew As Worksheet
Dim rngNames As Range
Dim cell As Range
Dim newName As String
Dim lastRow As Long
' Définir la feuille source contenant les prénoms
Set wsSource = ThisWorkbook.Sheets("Feuil1") ' Remplacez "Feuil1" par le nom de votre feuille source
' Définir la plage de cellules contenant les prénoms
lastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row ' Colonne A pour les prénoms
Set rngNames = wsSource.Range("A1:A" & lastRow)
' Boucler à travers chaque prénom et dupliquer la page Excel
For Each cell In rngNames
' Créer une nouvelle feuille
Set wsNew = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
' Renommer la nouvelle feuille avec le prénom
newName = cell.Value ' Utilisez la colonne appropriée pour les prénoms si nécessaire
wsNew.Name = newName
' Copier la page source sur la nouvelle feuille
wsSource.Copy Before:=wsNew
Next cell
End Sub
et la manip où je suis perdue
j'ai trouvé les tuto en pièces détachées mais je ne sais pas les rattacher
voilà - en violet à côté , les valeurs réelles des cases
en pj , le fichier
et ma tentative ))
si vous pouviez m'aider ?
je suis une prof de dessin
j'ai une fiche éduc nat à remplir
pour chaque élève de Terminale BAC, elle se compose de 3 tableaux de 5 , 5 et 3 lignes
je dois mettre des croix comme des -, =, + et leur "donner un total sur 6, puis 8 et 8.
Mais en fait , les croix ont une valeur masquée puis que leur addition finale est sur ... 20
j'ai demandé à chat GPT de m'écrire la "macro" mais je ne sais pas la mettre en oeuvre - je comprends un peu le code et je crois avoir bien expliqué mais je ne sais pas finaliser
voilà la discut avec la machine
ma question
sous excel, quelle macro me permet d'attribuer des valeurs à des cases si je les coche avec un x
et j'ai besoin d'avoir des valeurs différentes en fonction des colonnes
car j'ai 3 tableaux différents
en outre, ensuite, je dois dupliquer la feuille par le nombre d'élèves dont j'ai la liste excel ( NOM+prénom dans la même case
euh, je sais séparer, inclus qd les noms sont double ou triples ( noms portugais pas ex)
j'aimerais 1 - que les feuilles aient les noms de la liste
et que la case fusionnée C-DEF se remplisse automatiquement avec le NOM prénom de l'élève
de la feuille 1 du fichier
voila la réponse
Si vous souhaitez attribuer des valeurs différentes en fonction des colonnes, vous pouvez utiliser une approche similaire en ajustant la macro VBA. Voici un exemple de code qui illustre cette situation :
vbaCopy code
Sub AttribuerValeurs()
Dim cell As Range
For Each cell In Selection
If cell.Value = "x" Then ' Vérifie si la cellule contient "x"
' Attribue la valeur en fonction de la colonne
Select Case cell.Column
Case 1 ' Colonne A
cell.Offset(0, 1).Value = "Valeur Colonne A"
Case 2 ' Colonne B
cell.Offset(0, 1).Value = "Valeur Colonne B"
Case 3 ' Colonne C
cell.Offset(0, 1).Value = "Valeur Colonne C"
' Ajoutez des cas supplémentaires pour d'autres colonnes si nécessaire
Case Else
cell.Offset(0, 1).Value = "" ' Réinitialise la valeur de la cellule
End Select
Else
cell.Offset(0, 1).Value = "" ' Réinitialise la valeur de la cellule
End If
Next cell
End Sub
Dans cet exemple, nous utilisons l'instruction Select Case pour attribuer différentes valeurs en fonction de la colonne où se trouve la cellule cochée. Vous pouvez ajuster les valeurs attribuées en modifiant les lignes correspondant à chaque cas (Case).
Assurez-vous de sélectionner la plage de cellules appropriée avant d'exécuter la macro, et que vous avez activé l'onglet "Développeur" et l'éditeur VBA comme indiqué dans ma réponse précédente.
j'ai une page de 30 ligne de prénom une page excel à remplir pour chaque ligne dupliquer une page excel pour chaque ligne de nom+ prénom,
Sub DupliquerPages()
Dim wsSource As Worksheet
Dim wsNew As Worksheet
Dim rngNames As Range
Dim cell As Range
Dim newName As String
Dim lastRow As Long
' Définir la feuille source contenant les prénoms
Set wsSource = ThisWorkbook.Sheets("Feuil1") ' Remplacez "Feuil1" par le nom de votre feuille source
' Définir la plage de cellules contenant les prénoms
lastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row ' Colonne A pour les prénoms
Set rngNames = wsSource.Range("A1:A" & lastRow)
' Boucler à travers chaque prénom et dupliquer la page Excel
For Each cell In rngNames
' Créer une nouvelle feuille
Set wsNew = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
' Renommer la nouvelle feuille avec le prénom
newName = cell.Value ' Utilisez la colonne appropriée pour les prénoms si nécessaire
wsNew.Name = newName
' Copier la page source sur la nouvelle feuille
wsSource.Copy Before:=wsNew
Next cell
End Sub
et la manip où je suis perdue
j'ai trouvé les tuto en pièces détachées mais je ne sais pas les rattacher
- Ouvrez votre fichier Excel contenant la feuille avec les prénoms.
- Appuyez sur "ALT + F11" pour ouvrir l'éditeur VBA.
- Insérez le code ci-dessus dans une nouvelle feuille de module VBA.
- Modifiez la ligne Set wsSource = ThisWorkbook.Sheets("Feuil1") en remplaçant "Feuil1" par le nom de votre feuille source contenant les prénoms.
voilà - en violet à côté , les valeurs réelles des cases
en pj , le fichier
et ma tentative ))
si vous pouviez m'aider ?