et pas un mot pour moi, pierre?
t'aurais-je dit des c.....ies par zazar?
jps
"pierre" a écrit dans le message de
news:Bonjour Michdenis,
Je te remercie pour tes éclaircissements et je vais de ce pas sur
excelabo.
Bonne journée
pierre
"MichDenis" a écrit dans le message de news:
%Bonjour Pierre,
Pour simplifier, les modules Feuille (module de classe) reçoivent
habituellement le code qui leur est réservé soit par
les événements qui leur sont propres ou soient par les objets
appartenantà ces feuilles comme des boutons de
commande... Listbox, graphe....
En contrepartie, les modules "Standard " accueillent les macros
(Procédures et Fonctions personnalisées) qui
s'appliquent généralement à l'ensemble du classeur ou qui impliquent
plusieurs feuilles ou objets appartenant au
classeur.
Le sujet est beaucoup trop vaste pour entrer dans les détails... sauf
qu'il faut se rappeler que malgré toutes les
nuances possibles, la ligne de démarcation entre les 2 n'est pas
toujoursévidente. Cependant, la façon de faire
référence aux objets est différente selon que le code est écrit dans un
module feuille ou un module standard. La
déclaration de variables et leur étendue sont aussi différentes selon
l'endroit où elle est faite!
Si la chose t'intéresse vraiment, la consultation d'un bouquin sur le
sujet s'impose. Il y a, je crois, un début de
bibliographie à cette adresse : <http://www.excelabo.net>
Salutations!
"pierre" a écrit dans le message de news:
ukS8d%
Merci beaucoup,
c'est exactement ce que je voulais! Par contre à quoi sert un module
par
rapports à objets?
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
La correction que tu désires a été effectué.
'-------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
If .Range("A1") > 0 Then
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End If
End With
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"pierre" a écrit dans le message de news:
%
Je te remercie cela marche. Par contre je ne connaissais pas le
dossier
module!
Est ce que cette macro marche avec une condition "si" du genre:
=Si (feuil2!A1>0; recopie et insère feuil1!A1:A4 dans feuil2!A3) ?????
Merci d'avance pour ta réponse
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
Télécharge ce fichier exemple : http://cjoint.com/?dtv62SE6Qa
Salutations!
"pierre" a écrit dans le message de news:
%
Bonsoir MichDenis,
Merci pour ta réponse. J'ai recopié ta macro dans MVB de ma feuil2 et
rien!
Ci-dessous macro recopié (mes feuilles s'intitulent bien feuil1 et
feuil2):
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
La macro qui suit copie les données de la plage de cellules A1:A4 de
lafeuille1 vers la feuille2
Sur la feuille2, la procédure insère le nombre de lignes nécessaires
àla
copie des données de la feuille1 à partir de
la ligne A3 . En conséquence, les données seront copiées en A3:A6,
lesdonnées présentes se retrouvant à la suite ...
'------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
'------------------------------
Salutations!
"pierre" a écrit dans le message de news:
Bonsoir,
Je voudrais insérer une plage de texte (feuille1!A1: A4) dans ma
feuille2
entre les lignes A2 et A4 . Je fais bêtement un copier et insérer
les
cellules copiées mais j'ai besoin d'automatiser pour gagner du
temps.
Il
faudrait que ma plage de cellule, qui comporte 4 lignes s'insère
dansfeuille2 en A3 jusqu'à A7 et fasse descendre en A8 les données de
A4.
It's
possible?
pierre
et pas un mot pour moi, pierre?
t'aurais-je dit des c.....ies par zazar?
jps
"pierre" <pierre@free.fr> a écrit dans le message de
news:OqjVYFRLFHA.688@TK2MSFTNGP10.phx.gbl...
Bonjour Michdenis,
Je te remercie pour tes éclaircissements et je vais de ce pas sur
excelabo.
Bonne journée
pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
%23vsiqcNLFHA.3420@tk2msftngp13.phx.gbl...
Bonjour Pierre,
Pour simplifier, les modules Feuille (module de classe) reçoivent
habituellement le code qui leur est réservé soit par
les événements qui leur sont propres ou soient par les objets
appartenant
à ces feuilles comme des boutons de
commande... Listbox, graphe....
En contrepartie, les modules "Standard " accueillent les macros
(Procédures et Fonctions personnalisées) qui
s'appliquent généralement à l'ensemble du classeur ou qui impliquent
plusieurs feuilles ou objets appartenant au
classeur.
Le sujet est beaucoup trop vaste pour entrer dans les détails... sauf
qu'il faut se rappeler que malgré toutes les
nuances possibles, la ligne de démarcation entre les 2 n'est pas
toujours
évidente. Cependant, la façon de faire
référence aux objets est différente selon que le code est écrit dans un
module feuille ou un module standard. La
déclaration de variables et leur étendue sont aussi différentes selon
l'endroit où elle est faite!
Si la chose t'intéresse vraiment, la consultation d'un bouquin sur le
sujet s'impose. Il y a, je crois, un début de
bibliographie à cette adresse : <http://www.excelabo.net>
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
ukS8d%23MLFHA.2136@TK2MSFTNGP14.phx.gbl...
Merci beaucoup,
c'est exactement ce que je voulais! Par contre à quoi sert un module
par
rapports à objets?
Pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
ur8TcvMLFHA.3628@TK2MSFTNGP10.phx.gbl...
Bonjour Pierre,
La correction que tu désires a été effectué.
'-------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
If .Range("A1") > 0 Then
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End If
End With
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
%23dqdTjMLFHA.568@TK2MSFTNGP09.phx.gbl...
Je te remercie cela marche. Par contre je ne connaissais pas le
dossier
module!
Est ce que cette macro marche avec une condition "si" du genre:
=Si (feuil2!A1>0; recopie et insère feuil1!A1:A4 dans feuil2!A3) ?????
Merci d'avance pour ta réponse
Pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
eCfH7QMLFHA.2764@tk2msftngp13.phx.gbl...
Bonjour Pierre,
Télécharge ce fichier exemple : http://cjoint.com/?dtv62SE6Qa
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
%23JCzkFMLFHA.3420@tk2msftngp13.phx.gbl...
Bonsoir MichDenis,
Merci pour ta réponse. J'ai recopié ta macro dans MVB de ma feuil2 et
rien!
Ci-dessous macro recopié (mes feuilles s'intitulent bien feuil1 et
feuil2):
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
elQV35LLFHA.1528@TK2MSFTNGP09.phx.gbl...
Bonjour Pierre,
La macro qui suit copie les données de la plage de cellules A1:A4 de
la
feuille1 vers la feuille2
Sur la feuille2, la procédure insère le nombre de lignes nécessaires
à
la
copie des données de la feuille1 à partir de
la ligne A3 . En conséquence, les données seront copiées en A3:A6,
les
données présentes se retrouvant à la suite ...
'------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
'------------------------------
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
e9YJtwLLFHA.3552@TK2MSFTNGP10.phx.gbl...
Bonsoir,
Je voudrais insérer une plage de texte (feuille1!A1: A4) dans ma
feuille2
entre les lignes A2 et A4 . Je fais bêtement un copier et insérer
les
cellules copiées mais j'ai besoin d'automatiser pour gagner du
temps.
Il
faudrait que ma plage de cellule, qui comporte 4 lignes s'insère
dans
feuille2 en A3 jusqu'à A7 et fasse descendre en A8 les données de
A4.
It's
possible?
pierre
et pas un mot pour moi, pierre?
t'aurais-je dit des c.....ies par zazar?
jps
"pierre" a écrit dans le message de
news:Bonjour Michdenis,
Je te remercie pour tes éclaircissements et je vais de ce pas sur
excelabo.
Bonne journée
pierre
"MichDenis" a écrit dans le message de news:
%Bonjour Pierre,
Pour simplifier, les modules Feuille (module de classe) reçoivent
habituellement le code qui leur est réservé soit par
les événements qui leur sont propres ou soient par les objets
appartenantà ces feuilles comme des boutons de
commande... Listbox, graphe....
En contrepartie, les modules "Standard " accueillent les macros
(Procédures et Fonctions personnalisées) qui
s'appliquent généralement à l'ensemble du classeur ou qui impliquent
plusieurs feuilles ou objets appartenant au
classeur.
Le sujet est beaucoup trop vaste pour entrer dans les détails... sauf
qu'il faut se rappeler que malgré toutes les
nuances possibles, la ligne de démarcation entre les 2 n'est pas
toujoursévidente. Cependant, la façon de faire
référence aux objets est différente selon que le code est écrit dans un
module feuille ou un module standard. La
déclaration de variables et leur étendue sont aussi différentes selon
l'endroit où elle est faite!
Si la chose t'intéresse vraiment, la consultation d'un bouquin sur le
sujet s'impose. Il y a, je crois, un début de
bibliographie à cette adresse : <http://www.excelabo.net>
Salutations!
"pierre" a écrit dans le message de news:
ukS8d%
Merci beaucoup,
c'est exactement ce que je voulais! Par contre à quoi sert un module
par
rapports à objets?
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
La correction que tu désires a été effectué.
'-------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
If .Range("A1") > 0 Then
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End If
End With
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"pierre" a écrit dans le message de news:
%
Je te remercie cela marche. Par contre je ne connaissais pas le
dossier
module!
Est ce que cette macro marche avec une condition "si" du genre:
=Si (feuil2!A1>0; recopie et insère feuil1!A1:A4 dans feuil2!A3) ?????
Merci d'avance pour ta réponse
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
Télécharge ce fichier exemple : http://cjoint.com/?dtv62SE6Qa
Salutations!
"pierre" a écrit dans le message de news:
%
Bonsoir MichDenis,
Merci pour ta réponse. J'ai recopié ta macro dans MVB de ma feuil2 et
rien!
Ci-dessous macro recopié (mes feuilles s'intitulent bien feuil1 et
feuil2):
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
La macro qui suit copie les données de la plage de cellules A1:A4 de
lafeuille1 vers la feuille2
Sur la feuille2, la procédure insère le nombre de lignes nécessaires
àla
copie des données de la feuille1 à partir de
la ligne A3 . En conséquence, les données seront copiées en A3:A6,
lesdonnées présentes se retrouvant à la suite ...
'------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
'------------------------------
Salutations!
"pierre" a écrit dans le message de news:
Bonsoir,
Je voudrais insérer une plage de texte (feuille1!A1: A4) dans ma
feuille2
entre les lignes A2 et A4 . Je fais bêtement un copier et insérer
les
cellules copiées mais j'ai besoin d'automatiser pour gagner du
temps.
Il
faudrait que ma plage de cellule, qui comporte 4 lignes s'insère
dansfeuille2 en A3 jusqu'à A7 et fasse descendre en A8 les données de
A4.
It's
possible?
pierre
Bonsoir jps,
Bien sur, merci à toi aussi, surtout que maintenant grace à vous j'ai
accédé
à une marche de plus dans la connaissance du VBA (je pense être seulement
tout en bas!).
Bonne soirée
pierre
"jps" a écrit dans le message de news:et pas un mot pour moi, pierre?
t'aurais-je dit des c.....ies par zazar?
jps
"pierre" a écrit dans le message de
news:Bonjour Michdenis,
Je te remercie pour tes éclaircissements et je vais de ce pas sur
excelabo.
Bonne journée
pierre
"MichDenis" a écrit dans le message de news:
%Bonjour Pierre,
Pour simplifier, les modules Feuille (module de classe) reçoivent
habituellement le code qui leur est réservé soit par
les événements qui leur sont propres ou soient par les objets
appartenantà ces feuilles comme des boutons de
commande... Listbox, graphe....
En contrepartie, les modules "Standard " accueillent les macros
(Procédures et Fonctions personnalisées) qui
s'appliquent généralement à l'ensemble du classeur ou qui impliquent
plusieurs feuilles ou objets appartenant au
classeur.
Le sujet est beaucoup trop vaste pour entrer dans les détails... sauf
qu'il faut se rappeler que malgré toutes les
nuances possibles, la ligne de démarcation entre les 2 n'est pas
toujoursévidente. Cependant, la façon de faire
référence aux objets est différente selon que le code est écrit dans
un
module feuille ou un module standard. La
déclaration de variables et leur étendue sont aussi différentes selon
l'endroit où elle est faite!
Si la chose t'intéresse vraiment, la consultation d'un bouquin sur le
sujet s'impose. Il y a, je crois, un début de
bibliographie à cette adresse : <http://www.excelabo.net>
Salutations!
"pierre" a écrit dans le message de news:
ukS8d%
Merci beaucoup,
c'est exactement ce que je voulais! Par contre à quoi sert un module
par
rapports à objets?
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
La correction que tu désires a été effectué.
'-------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
If .Range("A1") > 0 Then
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End If
End With
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"pierre" a écrit dans le message de news:
%
Je te remercie cela marche. Par contre je ne connaissais pas le
dossier
module!
Est ce que cette macro marche avec une condition "si" du genre:
=Si (feuil2!A1>0; recopie et insère feuil1!A1:A4 dans feuil2!A3)
?????
Merci d'avance pour ta réponse
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
Télécharge ce fichier exemple : http://cjoint.com/?dtv62SE6Qa
Salutations!
"pierre" a écrit dans le message de news:
%
Bonsoir MichDenis,
Merci pour ta réponse. J'ai recopié ta macro dans MVB de ma feuil2
et
rien!
Ci-dessous macro recopié (mes feuilles s'intitulent bien feuil1 et
feuil2):
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
pierre
"MichDenis" a écrit dans le message de
news:
Bonjour Pierre,
La macro qui suit copie les données de la plage de cellules A1:A4
de
lafeuille1 vers la feuille2
Sur la feuille2, la procédure insère le nombre de lignes
nécessaires
àla
copie des données de la feuille1 à partir de
la ligne A3 . En conséquence, les données seront copiées en A3:A6,
lesdonnées présentes se retrouvant à la suite ...
'------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
'------------------------------
Salutations!
"pierre" a écrit dans le message de news:
Bonsoir,
Je voudrais insérer une plage de texte (feuille1!A1: A4) dans ma
feuille2
entre les lignes A2 et A4 . Je fais bêtement un copier et insérer
les
cellules copiées mais j'ai besoin d'automatiser pour gagner du
temps.
Il
faudrait que ma plage de cellule, qui comporte 4 lignes s'insère
dansfeuille2 en A3 jusqu'à A7 et fasse descendre en A8 les données de
A4.
It's
possible?
pierre
Bonsoir jps,
Bien sur, merci à toi aussi, surtout que maintenant grace à vous j'ai
accédé
à une marche de plus dans la connaissance du VBA (je pense être seulement
tout en bas!).
Bonne soirée
pierre
"jps" <pensez@liege.be> a écrit dans le message de news:
utAeJyRLFHA.580@TK2MSFTNGP15.phx.gbl...
et pas un mot pour moi, pierre?
t'aurais-je dit des c.....ies par zazar?
jps
"pierre" <pierre@free.fr> a écrit dans le message de
news:OqjVYFRLFHA.688@TK2MSFTNGP10.phx.gbl...
Bonjour Michdenis,
Je te remercie pour tes éclaircissements et je vais de ce pas sur
excelabo.
Bonne journée
pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
%23vsiqcNLFHA.3420@tk2msftngp13.phx.gbl...
Bonjour Pierre,
Pour simplifier, les modules Feuille (module de classe) reçoivent
habituellement le code qui leur est réservé soit par
les événements qui leur sont propres ou soient par les objets
appartenant
à ces feuilles comme des boutons de
commande... Listbox, graphe....
En contrepartie, les modules "Standard " accueillent les macros
(Procédures et Fonctions personnalisées) qui
s'appliquent généralement à l'ensemble du classeur ou qui impliquent
plusieurs feuilles ou objets appartenant au
classeur.
Le sujet est beaucoup trop vaste pour entrer dans les détails... sauf
qu'il faut se rappeler que malgré toutes les
nuances possibles, la ligne de démarcation entre les 2 n'est pas
toujours
évidente. Cependant, la façon de faire
référence aux objets est différente selon que le code est écrit dans
un
module feuille ou un module standard. La
déclaration de variables et leur étendue sont aussi différentes selon
l'endroit où elle est faite!
Si la chose t'intéresse vraiment, la consultation d'un bouquin sur le
sujet s'impose. Il y a, je crois, un début de
bibliographie à cette adresse : <http://www.excelabo.net>
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
ukS8d%23MLFHA.2136@TK2MSFTNGP14.phx.gbl...
Merci beaucoup,
c'est exactement ce que je voulais! Par contre à quoi sert un module
par
rapports à objets?
Pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
ur8TcvMLFHA.3628@TK2MSFTNGP10.phx.gbl...
Bonjour Pierre,
La correction que tu désires a été effectué.
'-------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
If .Range("A1") > 0 Then
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End If
End With
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
%23dqdTjMLFHA.568@TK2MSFTNGP09.phx.gbl...
Je te remercie cela marche. Par contre je ne connaissais pas le
dossier
module!
Est ce que cette macro marche avec une condition "si" du genre:
=Si (feuil2!A1>0; recopie et insère feuil1!A1:A4 dans feuil2!A3)
?????
Merci d'avance pour ta réponse
Pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de news:
eCfH7QMLFHA.2764@tk2msftngp13.phx.gbl...
Bonjour Pierre,
Télécharge ce fichier exemple : http://cjoint.com/?dtv62SE6Qa
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
%23JCzkFMLFHA.3420@tk2msftngp13.phx.gbl...
Bonsoir MichDenis,
Merci pour ta réponse. J'ai recopié ta macro dans MVB de ma feuil2
et
rien!
Ci-dessous macro recopié (mes feuilles s'intitulent bien feuil1 et
feuil2):
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
pierre
"MichDenis" <michdenis@hotmail.com> a écrit dans le message de
news:
elQV35LLFHA.1528@TK2MSFTNGP09.phx.gbl...
Bonjour Pierre,
La macro qui suit copie les données de la plage de cellules A1:A4
de
la
feuille1 vers la feuille2
Sur la feuille2, la procédure insère le nombre de lignes
nécessaires
à
la
copie des données de la feuille1 à partir de
la ligne A3 . En conséquence, les données seront copiées en A3:A6,
les
données présentes se retrouvant à la suite ...
'------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
'------------------------------
Salutations!
"pierre" <pierre@free.fr> a écrit dans le message de news:
e9YJtwLLFHA.3552@TK2MSFTNGP10.phx.gbl...
Bonsoir,
Je voudrais insérer une plage de texte (feuille1!A1: A4) dans ma
feuille2
entre les lignes A2 et A4 . Je fais bêtement un copier et insérer
les
cellules copiées mais j'ai besoin d'automatiser pour gagner du
temps.
Il
faudrait que ma plage de cellule, qui comporte 4 lignes s'insère
dans
feuille2 en A3 jusqu'à A7 et fasse descendre en A8 les données de
A4.
It's
possible?
pierre
Bonsoir jps,
Bien sur, merci à toi aussi, surtout que maintenant grace à vous j'ai
accédé
à une marche de plus dans la connaissance du VBA (je pense être seulement
tout en bas!).
Bonne soirée
pierre
"jps" a écrit dans le message de news:et pas un mot pour moi, pierre?
t'aurais-je dit des c.....ies par zazar?
jps
"pierre" a écrit dans le message de
news:Bonjour Michdenis,
Je te remercie pour tes éclaircissements et je vais de ce pas sur
excelabo.
Bonne journée
pierre
"MichDenis" a écrit dans le message de news:
%Bonjour Pierre,
Pour simplifier, les modules Feuille (module de classe) reçoivent
habituellement le code qui leur est réservé soit par
les événements qui leur sont propres ou soient par les objets
appartenantà ces feuilles comme des boutons de
commande... Listbox, graphe....
En contrepartie, les modules "Standard " accueillent les macros
(Procédures et Fonctions personnalisées) qui
s'appliquent généralement à l'ensemble du classeur ou qui impliquent
plusieurs feuilles ou objets appartenant au
classeur.
Le sujet est beaucoup trop vaste pour entrer dans les détails... sauf
qu'il faut se rappeler que malgré toutes les
nuances possibles, la ligne de démarcation entre les 2 n'est pas
toujoursévidente. Cependant, la façon de faire
référence aux objets est différente selon que le code est écrit dans
un
module feuille ou un module standard. La
déclaration de variables et leur étendue sont aussi différentes selon
l'endroit où elle est faite!
Si la chose t'intéresse vraiment, la consultation d'un bouquin sur le
sujet s'impose. Il y a, je crois, un début de
bibliographie à cette adresse : <http://www.excelabo.net>
Salutations!
"pierre" a écrit dans le message de news:
ukS8d%
Merci beaucoup,
c'est exactement ce que je voulais! Par contre à quoi sert un module
par
rapports à objets?
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
La correction que tu désires a été effectué.
'-------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
If .Range("A1") > 0 Then
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End If
End With
Set Rg = Nothing
End Sub
'-------------------------------
Salutations!
"pierre" a écrit dans le message de news:
%
Je te remercie cela marche. Par contre je ne connaissais pas le
dossier
module!
Est ce que cette macro marche avec une condition "si" du genre:
=Si (feuil2!A1>0; recopie et insère feuil1!A1:A4 dans feuil2!A3)
?????
Merci d'avance pour ta réponse
Pierre
"MichDenis" a écrit dans le message de news:Bonjour Pierre,
Télécharge ce fichier exemple : http://cjoint.com/?dtv62SE6Qa
Salutations!
"pierre" a écrit dans le message de news:
%
Bonsoir MichDenis,
Merci pour ta réponse. J'ai recopié ta macro dans MVB de ma feuil2
et
rien!
Ci-dessous macro recopié (mes feuilles s'intitulent bien feuil1 et
feuil2):
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
pierre
"MichDenis" a écrit dans le message de
news:
Bonjour Pierre,
La macro qui suit copie les données de la plage de cellules A1:A4
de
lafeuille1 vers la feuille2
Sur la feuille2, la procédure insère le nombre de lignes
nécessaires
àla
copie des données de la feuille1 à partir de
la ligne A3 . En conséquence, les données seront copiées en A3:A6,
lesdonnées présentes se retrouvant à la suite ...
'------------------------------
Sub CopierInserer()
Dim Rg As Range
With Worksheets("Feuil1")
Set Rg = .Range("A1:A4")
End With
With Worksheets("Feuil2")
.Range("A3:A" & Rg.Rows.Count + 2).Insert (xlDown)
Rg.Copy .Range("A3")
End With
Set Rg = Nothing
End Sub
'------------------------------
Salutations!
"pierre" a écrit dans le message de news:
Bonsoir,
Je voudrais insérer une plage de texte (feuille1!A1: A4) dans ma
feuille2
entre les lignes A2 et A4 . Je fais bêtement un copier et insérer
les
cellules copiées mais j'ai besoin d'automatiser pour gagner du
temps.
Il
faudrait que ma plage de cellule, qui comporte 4 lignes s'insère
dansfeuille2 en A3 jusqu'à A7 et fasse descendre en A8 les données de
A4.
It's
possible?
pierre