Manipulation objet: designer une autre colonne ?
mod77
Messages postés
1284
Date d'inscription
Statut
Membre
Dernière intervention
-
mod77 Messages postés 1284 Date d'inscription Statut Membre Dernière intervention -
mod77 Messages postés 1284 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je ne maitrise pas du tout les codes objets et cherche à contrôler si une colonne est vide pour agir, mais je ne sais comment faire (ligne en gras).
Voici mon code:
Quelqu'un saura-t-il m'aider, svp?
Je ne maitrise pas du tout les codes objets et cherche à contrôler si une colonne est vide pour agir, mais je ne sais comment faire (ligne en gras).
Voici mon code:
Open "D:\Votants.csv" For Output As #1
For Each oL In Plage.Rows 'pour chaque ligne de la plage
if colonne Q de la même ligne est vide then 'si la colonne "Q" est vide faire
Tmp = ""
For Each oC In oL.Cells 'pour chaque colonne de ligne
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Tmp = Left(Tmp, Len(Tmp) - 1) 'supression du dernier séparateur
Print #1, Tmp 'impression dans le fichier CSV
End If
Next
Close 'ferme le fichier CSV
Quelqu'un saura-t-il m'aider, svp?
A voir également:
- Manipulation objet: designer une autre colonne ?
- Vente objet occasion entre particulier - Guide
- Objet interdit en cabine ryanair - Guide
- Identifier un objet à partir d'une photo - Guide
- Mesurer un objet - Guide
- Ce document fait l'objet d'un trop grand nombre de modifications ✓ - Forum Word
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir, je suggère:
If oL.Cells(1, "Q") = Empty Then
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
tu n’obtiens pas ce que tu souhaites. qu’obtiens-tu? rien, trop, pas assez?
si tu supprimes le test, qu'obtiens-tu?
es-tu certain que Plage soit correct?
je te suggère d'ajouter
tu ne montres qu'une partie de ton code, es-tu certain que le reste est correct?
si tu supprimes le test, qu'obtiens-tu?
es-tu certain que Plage soit correct?
je te suggère d'ajouter
option expliciten début de module.
tu ne montres qu'une partie de ton code, es-tu certain que le reste est correct?
en supprimant le test j'ai toutes les lignes de plage.
Avec le test j'ai la même chose.
mon code:
Avec le test j'ai la même chose.
mon code:
Sub ExporteCSV()
Dim Plage As Object, oL As Object, oC As Object, Tmp As String, chemin As String, Sep$
chemin = "D:\monfichier.xlsm"
Worksheets("Votes").Select
Sep = ","
'Définie la plage de recherche
Set Plage = ActiveSheet.Range("B6:C" & ActiveSheet.Range("C65000").End(3).Row)
'Crée dans emplacement nom du fichier CSV
Open "D:\Votants.csv" For Output As #1
For Each oL In Plage.Rows 'pour chaque ligne de la plage
If oL.Cells(1, "Q") = Empty Then 'si la colonne "Q" est vide faire sinon changer de ligne
Tmp = ""
For Each oC In oL.Cells 'pour chaque colonne de ligne
Tmp = Tmp & CStr(oC.Text) & Sep
Next
Tmp = Left(Tmp, Len(Tmp) - 1) 'supression du dernier séparateur
Print #1, Tmp 'impression dans le fichier CSV
End If
Next
Close 'ferme le fichier CSV
End Sub
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
mieux ainsi?
If Plage.Parent.Cells(oL.Cells(1, 1).Row, "Q") = Empty Then
Bonjour,
Je reviens sur le sujet car je dois écrire un titre dans chaque colonne avant de récupérer les données.
j'ai utilisé :
La première instruction écrit bien sur la 1ere ligne 1ere colonne mais
la deuxième écrit sur la 2e ligne, 1e colonne, au lieu de 1ere ligne ligne et 2e colonne.
Comment puis-je y arriver svp?
Je reviens sur le sujet car je dois écrire un titre dans chaque colonne avant de récupérer les données.
j'ai utilisé :
Print #1, "Numéro de carte"
Print #1, Tag(2); "Numéro de lot"
La première instruction écrit bien sur la 1ere ligne 1ere colonne mais
la deuxième écrit sur la 2e ligne, 1e colonne, au lieu de 1ere ligne ligne et 2e colonne.
Comment puis-je y arriver svp?
je te remercie pour le code . Néanmoins pourquoi le '1' ?
ne serait-ce pas '6' dans mon cas ? Car la plage va de la ligne 6 à la dernière.
J'aimerais comprendre la méthode 'oL.Cells'
mais je n'ai pas le tri que je souhaite.