Je bloque en vba pour passer à la ligne
Fermé
MARCUSIO
-
25 avril 2008 à 21:17
Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 - 26 avril 2008 à 18:16
Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 - 26 avril 2008 à 18:16
A voir également:
- Je bloque en vba pour passer à la ligne
- Aller à la ligne excel - Guide
- Site de vente en ligne particulier - Guide
- Partager photos en ligne - Guide
- Code puk bloqué - Guide
- Passer de windows 7 à windows 10 - Accueil - Mise à jour
4 réponses
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
25 avril 2008 à 22:51
25 avril 2008 à 22:51
Bonsoir,
Je suppose que la ligne ("B6:B15").que vous copiez sur le la feuille ("Base de données") doit toujours être enregistrée sur la première ligne vide qui suit les enregistrements existants.....
Dans se cas voici le code à utilisé :
Sheets("Base de données").Select '---votre code
Range("C65536").End(xlUp).Offset(2, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
C'est tout, la ligne ("B6:B15") est en place.
Salutations.
Jean-Pierre
Je suppose que la ligne ("B6:B15").que vous copiez sur le la feuille ("Base de données") doit toujours être enregistrée sur la première ligne vide qui suit les enregistrements existants.....
Dans se cas voici le code à utilisé :
Sheets("Base de données").Select '---votre code
Range("C65536").End(xlUp).Offset(2, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
C'est tout, la ligne ("B6:B15") est en place.
Salutations.
Jean-Pierre
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
26 avril 2008 à 11:22
26 avril 2008 à 11:22
Bonjour,
J'ai regardé à nouveau votre demande et je constate que ma réponse n'est pas bonne.
Pouvez-vous expliquer avec un peu plus de détail la composition de votre "formulaire" .....
Et dans quelles positions les données doivent se trouver dans "Base de données" .....
A défaut une copie partiel devotre classeur sur www.cjoint.com serait plus profitable!
Merci.
J'ai regardé à nouveau votre demande et je constate que ma réponse n'est pas bonne.
Pouvez-vous expliquer avec un peu plus de détail la composition de votre "formulaire" .....
Et dans quelles positions les données doivent se trouver dans "Base de données" .....
A défaut une copie partiel devotre classeur sur www.cjoint.com serait plus profitable!
Merci.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
26 avril 2008 à 13:29
26 avril 2008 à 13:29
Bonjour,
En attendant, j'ai déchiffré votre code et j'ai trouvez ceci :
Dans cette partie probablement une erreur :
'Atteindre le formulaire et memoriser les données
Sheets("formulaire").Select
Range("F12").Select
Selection.Copy
' Test pour déterminer la ligne où coller les infos dans le tableau
Sheets("Base de données").Select
valeurS2 = Range("S3").Value
If valeurS3 = "" Then
Range("S3").Select
Else
Il s’agit certainement de la cellule « S2 » et non « S3 »
Pour la suite j'attend votre réponse.
En attendant, j'ai déchiffré votre code et j'ai trouvez ceci :
Dans cette partie probablement une erreur :
'Atteindre le formulaire et memoriser les données
Sheets("formulaire").Select
Range("F12").Select
Selection.Copy
' Test pour déterminer la ligne où coller les infos dans le tableau
Sheets("Base de données").Select
valeurS2 = Range("S3").Value
If valeurS3 = "" Then
Range("S3").Select
Else
Il s’agit certainement de la cellule « S2 » et non « S3 »
Pour la suite j'attend votre réponse.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
26 avril 2008 à 18:16
26 avril 2008 à 18:16
Bonjour,
Ci-dessous ma proposition.
J'évite l'aller et retour entre les 2 feuilles. Je chage une variablle avec toutes les données à transfèrer, ensuite sur ma "base_de_données" je cherche la première ligne vide du tableau et j'y enregistre les valeurs de ma variable et ensuite je réinitialise les plage de "Formulaire".
C'est une autre façon de faire, à vous de voir
Private Sub transfert_dans_tableau()
Dim tra()
Dim c As Integer
ReDim tra(18)
'Atteindre le formulaire et transfèrer les données dans variable "tra"
Sheets("formulaire").Select
tra(0) = Range("H10").Value
tra(1) = Range("H7").Value
tra(2) = Range("B6").Value
tra(3) = Range("B7").Value
tra(4) = Range("B8").Value
tra(5) = Range("B9").Value
tra(6) = Range("B10").Value
tra(7) = Range("B11").Value
tra(8) = Range("B12").Value
tra(9) = Range("B13").Value
tra(10) = Range("B14").Value
tra(11) = Range("B15").Value
tra(12) = Range("F6").Value
tra(13) = Range("F7").Value
tra(14) = Range("F8").Value
tra(15) = Range("F9").Value
tra(16) = Range("F10").Value
tra(17) = Range("F14").Value
tra(18) = Range("F12").Value
' -- vers feuille de stockage
Sheets("Base_de_données").Select
' trouver la première ligne vide qui suit dans le tableau et copier les données de la variable "tra"
nli = Range("C65536").End(xlUp).Offset(1, 0).Row
For c = 0 To 18
ActiveSheet.Cells(nli, (c + 1)) = tra(c)
Next c
' retour à la feuille de saisie des données et initialiser les plages
Sheets("Formulaire").Select
Range("B6:B15").ClearContents
Range("F6:F10").ClearContents
Range("F12").ClearContents
Range("F14").ClearContents
Range("H7").ClearContents
Range("H10").ClearContents
Range("A1").Select
End Sub
Bonne fin de semaine.
Ci-dessous ma proposition.
J'évite l'aller et retour entre les 2 feuilles. Je chage une variablle avec toutes les données à transfèrer, ensuite sur ma "base_de_données" je cherche la première ligne vide du tableau et j'y enregistre les valeurs de ma variable et ensuite je réinitialise les plage de "Formulaire".
C'est une autre façon de faire, à vous de voir
Private Sub transfert_dans_tableau()
Dim tra()
Dim c As Integer
ReDim tra(18)
'Atteindre le formulaire et transfèrer les données dans variable "tra"
Sheets("formulaire").Select
tra(0) = Range("H10").Value
tra(1) = Range("H7").Value
tra(2) = Range("B6").Value
tra(3) = Range("B7").Value
tra(4) = Range("B8").Value
tra(5) = Range("B9").Value
tra(6) = Range("B10").Value
tra(7) = Range("B11").Value
tra(8) = Range("B12").Value
tra(9) = Range("B13").Value
tra(10) = Range("B14").Value
tra(11) = Range("B15").Value
tra(12) = Range("F6").Value
tra(13) = Range("F7").Value
tra(14) = Range("F8").Value
tra(15) = Range("F9").Value
tra(16) = Range("F10").Value
tra(17) = Range("F14").Value
tra(18) = Range("F12").Value
' -- vers feuille de stockage
Sheets("Base_de_données").Select
' trouver la première ligne vide qui suit dans le tableau et copier les données de la variable "tra"
nli = Range("C65536").End(xlUp).Offset(1, 0).Row
For c = 0 To 18
ActiveSheet.Cells(nli, (c + 1)) = tra(c)
Next c
' retour à la feuille de saisie des données et initialiser les plages
Sheets("Formulaire").Select
Range("B6:B15").ClearContents
Range("F6:F10").ClearContents
Range("F12").ClearContents
Range("F14").ClearContents
Range("H7").ClearContents
Range("H10").ClearContents
Range("A1").Select
End Sub
Bonne fin de semaine.