FFO
Grand merci. La solution répond bien à mon besoin et fonctionne correctement.
FFO
Grand merci. La solution répond bien à mon besoin et fonctionne correctement.
FFO,
Dernière solicitation. Auriez vous le morceau de code qui lance cette macro mais qui permet de rester sur le formulaire de saisie. Par Défaut la macro me renvoie vers la table qui reçoit les données?
D’avance merci
Ravis que cela te convienne
Intègres ces quelques lignes dans ta macro comme ceci :
Sub formulaire()
Sheets(« saisie_ordre »).Activate 'n’est pas obligatoire
Sheets(« HISTORIQUE_ORDRE »).Select
Range(« A2 »).Select
While ActiveCell <> « »
ActiveCell.Offset(1, 0).Select
Wend
n = 0
For each c in Sheets(« saisie_ordre »).Range(« B3:B18 »)
Sheets(« nom de l’onglet »).Range(« A » & Activecell.Row).offset(0,n).Value=c
n = n+1
Next
Sheets(« saisie_ordre »).Range(« B5 »).ClearContents
Sheets(« saisie_ordre »).Range(« B9 »).ClearContents
Sheets(« saisie_ordre »).Range(« B13:B17 »).ClearContents
Sheets(« saisie_ordre »).Range(« B3 »).Value = Sheets(« saisie_ordre »).Range(« B3 »).Value + 1
End Sub
N’oublies pas de ressaisir les guillemets et de modifier la donnée « nom de l’onglet »
Si soucis dis le moi car je ne peux tester n’ayant pas le fichier
hello FFO
si tu veux mettre du code il vaut mieux utiliser l’icône dans la fenetre de réponse représentant </>
ce qui donne cela
Range("A" & Activecell.Row , "A" & Activecell.row+15).Value = Sheets("saisie_ordre").Range("B3:B18).Value
au lieu de
Range(« A » & Activecell.Row , « A » & Activecell.row+15).Value = Sheets(« saisie_ordre »).Range(« B3:B18 »).Value
ou cela
Sub formulaire()
Sheets("saisie_ordre").Activate 'n’est pas obligatoire
Sheets("HISTORIQUE_ORDRE").Select
Range("A2").Select
While ActiveCell <> ""
ActiveCell.Offset(1, 0).Select
Wend
n = 0
For each c in Sheets("saisie_ordre").Range("B3:B18")
Sheets("nom de l’onglet").Range("A" & Activecell.Row).offset(0,n).Value=c
n = n+1
Next
Sheets("saisie_ordre").Range("B5").ClearContents
Sheets("saisie_ordre").Range("B9").ClearContents
Sheets("saisie_ordre").Range("B13:B17").ClearContents
Sheets("saisie_ordre").Range("B3").Value = Sheets("saisie_ordre").Range("B3").Value + 1
End Sub
Bonjour taz
Dans cette solution peut on utiliser le copier/coller pour récupérer une ligne de code de notre interlocuteur afin de lui proposer en rapport la sienne corrigée
Dans mes réponses mes propositions en sont le fruit et ainsi d éviter une saisie fastidieuse avec un risque d’erreur
Qu’en est il exactement ?
Si a la base il avait utilisé le </> (texte preformaté) oui…
Sinon le préformatage ne restaure pas une formule non formater, dans le cas de ton code j’ai juste remplacer les guillemets par
" "
Donc c’est bien ce que je pressentais et d’opter pour ma manière d’opérer en invitant notre interlocuteur à corriger lui même les anomalies des guillemets plus simple et moins risqué pour moi
Merci à toi
De plus je n’ai pas cet icone dans la barre de menu
Donc solution impossible pour moi
Bonjour FFO
Bizarre que tu n’as pas ce logo
Tu peut, pour bien formater ton code, agir comme ceci
triple accent grave (touche ALT-GR & touche 7), espace, vb, à la ligne
et après
triple accent grave, à la ligne
Entre les 2 tu peux coller le VBA tel qu’il apparait dans l’éditeur VBE
Sur smartphone, elle n’apparait pas, il faut alors cliquer sur la roue crantée pour voir toutes les options
Merci beaucoup pour cette solution
si j’ai bien compris ainsi :
Sheets("Feuil1").Range("A1") = "test"
Je confirme les propos de taz concernant l’icone celle-ci est bien avec mon PC mais pas sur ma tablette l’option est bien dans le menu du dernier icone des paramètres
Bonjour A tous
Ma macro avec vos corrections fonctionne bien et je vous remercie. Elle copie bien mes données, mais à chaque lancement, elle termine sur le feuillet « HISTORIQUE_ORDRE » alors que je souhaite rester sur lé formulaire de saisie « Saisie_HORDRE ». Auriez-vous une instruction supplémentaire à mettre dans le code VBA pour reste sur le formulaire et éviter les aller-retours ?
D’avance merci
Bonjour
Avec ton fichier à notre disposition ce serait plus simple car sans on est un peu en aveugle impossible de tester nos propositions
Remplace toute ta macro par celle-ci :
Sub formulaire()
i=2
Do While Sheets("HISTORIQUE_ORDRE").Range("A" & i)<> ""
i=i+1
loop
ligne =i
n = 0
For each c in Sheets("saisie_ordre").Range("B3:B18")
Sheets("nom de l’onglet").Range("A" & ligne).offset(0,n).Value=c
n = n+1
Next
Sheets("saisie_ordre").Range("B5").ClearContents
Sheets("saisie_ordre").Range("B9").ClearContents
Sheets("saisie_ordre").Range("B13:B17").ClearContents
Sheets("saisie_ordre").Range("B3").Value = Sheets("saisie_ordre").Range("B3").Value + 1
End Sub
Testes et dis moi car je ne peux sans fichier faire de même
Bonsoir FFO
Grand merci. La macro fonctionne comme il faut voir.
Cdlt
sergio
Bonjour
Parfait parfait
La prochaine fois un fichier joint sera le bien venu afin de tester nos propositions
Au plaisir
Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.