crapu
Messages postés7Date d'inscriptionvendredi 16 juin 2006StatutMembreDernière intervention28 décembre 2006
-
27 nov. 2006 à 21:48
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 2011
-
28 déc. 2006 à 16:06
http://www.vbfrance.com/codes/MANIPULATION-EXCEL-SOUS-VB_6101.aspx# Bonjour,
Je suis de la Roumanie et donc je m'excuse pour les eventuelles erreurs de grammaire.
J'ai pas trop de connaissances sur le VB, mais, a l'aide de quelques livres, j'ai essaye quelques applications simples. J'ai rencontre les suivantes difficultes:
1. pour une premiere application: Je veux creer un boutton "Parcourir" qui ouvre un fichier .txt ou .dat, il prend les donnees (environ 8020 donnees sur une collonne) et il les envoye dans un fichier Excel.
2. pour la deuxieme application: J'ai developpe un petite application qui, a la commande, prend les donnees introduites a l'aide des boites de dialogue et les mette dans un fichier Excel dans des certaines cellules, bien etablites, mais je veux qu'a la suivante commande d'introduction de donnees, il verifie d'abord, les cellules et si elle est vide, les donnees y seront mis, sinon il passe a la ligne suivante.
J'ai besoin de quelques lignes de code dans les deux cas pour que je puisse les adapter aux mes besoins.
Merci d'avance.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 27 nov. 2006 à 21:51
Salut,
Bon point : pour un Roumain, tu écris très bien, contrairement à certains dont le français est la langue maternelle.
Mauvais Points :
* Une seule question, pas 2 ou + par jour !
* Recherche sur le forum, via moteur de recherche CS, les code pour lire fichier texte et
piloter excel
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
crapu
Messages postés7Date d'inscriptionvendredi 16 juin 2006StatutMembreDernière intervention28 décembre 2006 27 nov. 2006 à 22:29
Merci pour les sugestions,
J'ai cherche un peu mais je trouve pas tout a fait ce que je veux. Toute fois si quelq'un a utilise dans ses applications des codes qui peuvent m'aider j'attends des solutions.
Comme je vous disais j'ai pas trop de connaissances sur le VBA.
Bonne soiree.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 27 nov. 2006 à 22:37
Voici un bout de code :
Sub ImportDonneesFichiersTexte()
Dim strFile As String
Dim strAllText() As String
Dim ff As Integer
Dim i As Integer
Dim iNbLine As Integer
Dim iLigne As Integer
strFile = "C:\Chemin\Nom
fichier.txt"
' ici place le bon chemin et nom du
fichier texte
ff = FreeFile
Open strFile For Input As ff
Contenu = Input(LOF(ff), ff)
Close 2
' Ca c'est pour ouvrir, lire et fermer le
fichier texte
strAllText() = Split(Contenu, vbCrLf)
' on découpe ligne par ligne
iNbLine = UBound(strAllText)
' on compte les données
iLigne = 1
For i = 0 To iNbLine
' on place tout dans le classeur, 1ere colonne, ligne 1 et ainsi
' de suite jusqu'à la fin des données
Cells(iLigne, 1).Value = strAllText(i)
iLigne = iLigne + 1
Next i
Erase strAllText
' on efface le tableau
End Sub
~
Mortalino ~
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 28 nov. 2006 à 08:56
[auteurdetail.aspx?ID= 917864 >crapu ]
Pour le bouton parcourir regarde du côté du contrôle qui s'appelle Common Dialog Control
[auteurdetail.aspx?ID=647037 > Salut mortalino]
Tu vas me trouver C....t mais Contenu n'est pas déclaré.
De plus Close 2 alors que Open ... As ff
Et pour finir pourquoi utiliser plus de varaibles que necessaire.
Par la j'entends
For i = 0 to UBound(strAllText)
Cells(i + 1, 1).Value = StrAllText(i)
Next
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 28 nov. 2006 à 13:08
Salut Julien,
beh en fait, à force de faire 50 000 copier coller, j'ai plus fait gaffe.
Tu as tout à fait raison sur toute la ligne (enfin, les lignes ;)) et je ferai un effort d'être plus vigilent.
Bonne aprem ;)
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
crapu
Messages postés7Date d'inscriptionvendredi 16 juin 2006StatutMembreDernière intervention28 décembre 2006 28 nov. 2006 à 20:23
Salut mes amis,
J'ai le code suivant qui ouvre un fichier Excel et un menu "Parcourir". Le contenu du fichier ouvert (.ISO) a l'aide de parcourir sera mis dans un TextBox. Comment je peut le modifier afin que le contenu du fichier .ISO soit mis directement dans le fichier Excel ?
Merci et bonne soiree.
<hr />
Private Sub Command1_Click(Index As Integer)
Dim nrinc As String
'excel
Dim xcl As Excel.Application
Set xcl = CreateObject("Excel.Application")
If xcl <> "" Then
xcl.Workbooks.Add 'adauga un registru la colectie
xcl.DisplayAlerts = False
End If
xcl.Worksheets.Add 'adauga o foaie
xcl.Cells(1, 2) = "celula 1,2"
' secventa de mai jos o poti folosi pt cazul in care vrei sa salvezi documentul
' poti deasemenea si redenumi foaia in care lucrezi
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Set xlBook = xcl.Workbooks(1)
Set xlSheet = xlBook.Worksheets(1)
xcl.Workbooks(1).SaveAs ("C:\Documents and Settings\Ilie Ionut\Desktop\excel\MyExcel.xls")
Set xlSheet = Nothing
Set xlBook = Nothing
' sfarsit secventa
xcl.Visible = True
Set xcl = Nothing
Dim intfichier As Integer
Dim intmessageresultat As Integer
If blnestmodife = True Then
intmessageresultat = MsgBox("Inregistrati modificarile?", vbQuestion + vbYesNo, "Fisier modificat")
If intmessageresultat = vbYes Then
Call mnufichierEnregistrer_Click
cmOuvrirFichier.DialogTitle = "Selectionati un fisier"
End If
End If
cmOuvrirFichier.ShowOpen
intfichier = FreeFile
Open cmOuvrirFichier.FileName For Input As intfichier
txtblocnotes.Text = Input(LOF(intfichier), intfichier)
frmBlocNotes.Caption = "Bloc Notes" + cmOuvrirFichier.FileName
Close #intfichier
crapu
Messages postés7Date d'inscriptionvendredi 16 juin 2006StatutMembreDernière intervention28 décembre 2006 28 déc. 2006 à 12:33
Salut,
Peut quelq'un m'aider pour la deuxieme question ?
J'ai besoin d'une instruction comme : Ifcellule vide thenmettre les donnees dans la cellule else passe a la ligne suivante.
Comment faire cela ?
J'ai ajoute un petite partie de code pour exemple:
<hr />'Pista
Sheets("Pista").Select
'data
Range("B19").Select
ActiveCell.FormulaR1C1 = data
'nr ore
Range("c19").Select
ActiveCell.FormulaR1C1 = "8"
'linia de proiect
Range("d19").Select
ActiveCell.FormulaR1C1 = linieproiect
'descriere activitate
Range("e19").Select
ActiveCell.FormulaR1C1 = "Efectuare incercare"
crapu
Messages postés7Date d'inscriptionvendredi 16 juin 2006StatutMembreDernière intervention28 décembre 2006 28 déc. 2006 à 12:33
Salut,
Peut quelq'un m'aider pour la deuxieme question ?
J'ai besoin d'une instruction comme : Ifcellule vide thenmettre les donnees dans la cellule else passe a la ligne suivante.
Comment faire cela ?
J'ai ajoute un petite partie de code pour exemple:
<hr />'Pista
Sheets("Pista").Select
'data
Range("B19").Select
ActiveCell.FormulaR1C1 = data
'nr ore
Range("c19").Select
ActiveCell.FormulaR1C1 = "8"
'linia de proiect
Range("d19").Select
ActiveCell.FormulaR1C1 = linieproiect
'descriere activitate
Range("e19").Select
ActiveCell.FormulaR1C1 = "Efectuare incercare"
En rouge c'est la correspondance avec la première colonne, si tu cherches dans la colonne C, bah ce sera Columns(3) et [C1] (ou [C12], peut importe sur le numéro de la ligne de départ, c'est ton choix)
@++
<hr width="100%" size="2" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
/DIV>