25-02-16, 13:55
|
Όνομα: Γιώργος Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2013 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική | | Εγγραφή: 02-04-2013 Περιοχή: Κύπρος
Μηνύματα: 738
| |
Γιώργο γειά σου και ευχαριστώ για την ανταπόκριση φίλε μου,
Βασικά Γιώργο μου θέλω να αποφύγω εντελώς το Input Box και να παίρνει τιμη από την φόρμα (SKey) και απο το πεδίο [0txtMod1]. Για αυτό προσπάθησα να προσαρμόσω τον κώδικα έτσι ώστε να κάνει τα εξής:
1. Στην διαδρομή "C:\ProgramData\Dash\Slash.txt" υπάρχει το αρχείο μέσα στο οποίο αποθηκεύονται περίπου 20 αριθμοί ό ένας κάτω απο τον άλλο (σε διαφορετικη γραμμή δηλαδή)
2. Εφόσον ανοίξει η φόρμα (SKey) το πεδίο [txtMod1] παίρνει όλες τις τιμές (όλες δηλαδή τις γραμμές) που υπαρχουν στο αρχείο Slash.txt που όπως είπα βρίσκεται μέσα στο Folder Dash (C:\ProgramData\Dash\Slash.txt).
3. Αυτό που προσπαθώ να επιτύχω (και θα εκτιμούσα την αμέριστη βοήθεια σου) είναι εφόσον πατώσω την εντολή cmdSearch να μπορεί ο κώδικας να "κοιτάζει" σε αυτό το αρχείο εάν υπάρχει σε οποιαδήποτε γραμμή ο αριθμός που βρίσκεται σε ένα άλλο πεδίο (το [txtData]) που βρίσκεται και αυτό στην φόρμα..
Προσπάθησα λοιπόν να μετατρέψω τον κώδικα αλλά....μάταια..
Function findtext(sfile As String) As String
lngLine = 0
nfile = FreeFile
strSearch = Forms!SKey.txtMod1
lngLine = 0
blnFound = False
Open sfile For Random As #nfile
Do While Not EOF(nfile)
lngLine = lngLine + 1
Line Input #nfile, strLine
If InStr(1, strLine, strSearch, vbBinaryCompare) > 0 Then
msg = MsgBox("Ο αριθμός :" & strSearch & " βρέθηκε στην γραμμή: " & lngLine & " θελετε να διαγραφεί?", vbQuestion + vbOKCancel)
blnFound = True
If msg = vbOK Then
Call DeleteLinefile(sfile, lngLine)
Close #nfile
Exit Do
End If
End If
Loop
If blnFound = False Then
MsgBox "Ο αριθμός :" & strSearch & " δεν βρέθηκε", vbInformation
End If
Close #nfile
End Function
Ευχαριστώ εκ προτέρων
|