OVH Cloud OVH Cloud

Positionnement dans feuille Excel

3 réponses
Avatar
JK
Bonjour

J'ai un fichier Excel transformé par macro pour être utilisé en table
Access.
Cette macro me supprime les lignes et les cellules vides et ne laisse que
les lignes avec référence, désignation et PUHT
Or, pour en faire une table liée, je dois désigner des noms de champs sur la
ligne 1.

Ma macro se positionne sur ("B" & j) et m'écrase mes noms de champs.

Comment faire pour se positionner sur B2 ?

Ce fichier Excel est un tarif mis à jour 3 fois par semaine.

Voila ma macro :
j = 1
For i = 1 To nblignes + 1
Feuil2.Activate
Feuil2.Range("A" & i & ":C" & i).Select
For Each c In Feuil2.Range("A" & i & ":C" & i)
If c.Value = "nc" Then nc = prix non connu
c.Value = 0
End If
Next c

If IsNumeric(Feuil2.Range("A" & i).Value) And Feuil2.Range("A" &
i).Value > 1 Then

Selection.Copy
Feuil3.Select
Feuil3.Range("B" & j).Select
Feuil3.Paste


j = j + 1

End If

Next i

Merci pour vos réponses éclairées.

Jack

3 réponses

Avatar
Philippe.R
Bonjour JK,
Poser j=2 en début de macro ?
Ou bien je n'ai rien compris...
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
"JK" a écrit dans le message de news:
Bonjour

J'ai un fichier Excel transformé par macro pour être utilisé en table
Access.
Cette macro me supprime les lignes et les cellules vides et ne laisse que
les lignes avec référence, désignation et PUHT
Or, pour en faire une table liée, je dois désigner des noms de champs sur la
ligne 1.

Ma macro se positionne sur ("B" & j) et m'écrase mes noms de champs.

Comment faire pour se positionner sur B2 ?

Ce fichier Excel est un tarif mis à jour 3 fois par semaine.

Voila ma macro :
j = 1
For i = 1 To nblignes + 1
Feuil2.Activate
Feuil2.Range("A" & i & ":C" & i).Select
For Each c In Feuil2.Range("A" & i & ":C" & i)
If c.Value = "nc" Then nc = prix non connu
c.Value = 0
End If
Next c

If IsNumeric(Feuil2.Range("A" & i).Value) And Feuil2.Range("A" &
i).Value > 1 Then

Selection.Copy
Feuil3.Select
Feuil3.Range("B" & j).Select
Feuil3.Paste


j = j + 1

End If

Next i

Merci pour vos réponses éclairées.

Jack




Avatar
JK
Merci à toi
Cela fonctionne
Et dire que cela fait 3 jours que je triture cela dans tous les sens.
"Philippe.R" a écrit dans le message de news:

Bonjour JK,
Poser j=2 en début de macro ?
Ou bien je n'ai rien compris...
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
"JK" a écrit dans le message de
news:

Bonjour

J'ai un fichier Excel transformé par macro pour être utilisé en table
Access.
Cette macro me supprime les lignes et les cellules vides et ne laisse
que


les lignes avec référence, désignation et PUHT
Or, pour en faire une table liée, je dois désigner des noms de champs
sur la


ligne 1.

Ma macro se positionne sur ("B" & j) et m'écrase mes noms de champs.

Comment faire pour se positionner sur B2 ?

Ce fichier Excel est un tarif mis à jour 3 fois par semaine.

Voila ma macro :
j = 1
For i = 1 To nblignes + 1
Feuil2.Activate
Feuil2.Range("A" & i & ":C" & i).Select
For Each c In Feuil2.Range("A" & i & ":C" & i)
If c.Value = "nc" Then nc = prix non connu
c.Value = 0
End If
Next c

If IsNumeric(Feuil2.Range("A" & i).Value) And Feuil2.Range("A" &
i).Value > 1 Then

Selection.Copy
Feuil3.Select
Feuil3.Range("B" & j).Select
Feuil3.Paste


j = j + 1

End If

Next i

Merci pour vos réponses éclairées.

Jack








Avatar
JK
Mais cela m'enlève la 1ere ligne où figurent les noms de champs.
Que faire ?
Jack