Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/)
-   -   [VBA] Αυτοματη συμπληρωση textbox συμφωνα με 2 combobox (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/5771-aytomati-symplirosi-textbox-symfona-me-2-combobox.html)

Rodokanator 19-02-21 21:15

Απλα αψογο! Ευχαριστω πολυ Χρηστο νομιζω το τερματισαμε!!! Πλεον κανει τα παντα!

Rodokanator 11-03-21 15:00

Επιστρέφω μετά από αρκετό καιρό εργασίας με το φύλλο και μπορώ να πω ότι αν και έχει μεγαλώσει αρκετά σε μέγεθος και δεδομένα παραμένει ελαφρυ και γρήγορο. Προέκυψε όμως ένα νέο πρόβλημα. Ο αριθμός των ΚΑΕ έχει γίνει μεγάλος με αποτέλεσμα να μην μπορείς να θυμάσαι εύκολα σε τι αντιστοιχεί το κάθε ένα. Υπάρχει τρόπος χωρίς να αλλάξουμε πολύ τη μορφή του φύλλου ( όπως είπα δεν το χρησιμοποιώ εγώ) να προσθέσουμε μια αναζήτηση για το ΚΑΕ βασισμένο σε περιγραφή?

ChrisGT7 11-03-21 20:29

1 Συνημμένο(α)
Καλησπέρα Γιώργο,

Έβαλα αναζήτηση ΚΑΕ στην καρτέλα. Πατώντας το μεγεθυντικό φακό, εμφανίζεται η φόρμα αναζήτησης ΚΑΕ, όπου μπορείτε να ψάχνετε είτε με τον ΚΑΕ είτε με την περιγραφή τους. Ο αστερίσκος (*) είναι ο χαρακτήρας μπαλαντέρ.

Στο φύλλο ΚΑΕ έχω κρύψει τις στήλες D:H, οι οποίες χρησιμοποιούνται για το προηγμένο φίλτρο και τα αποτέλεσμα των κριτηρίων που χρησιμοποιεί η φόρμα αναζήτησης.

Ελπίζω να σας διευκολύνει αυτή η πρόταση.

Rodokanator 12-03-21 17:28

Όπως πάντα άμεσος και αποτελεσματικός. Μια παρατήρηση μόνο. Μπορούμε το list box να ξεκινάει άδειο και να δείχνει μόνο αποτελέσματα αφού πατήσουμε την αναζήτηση? Ρωτάω γιατί κάθε φορά που κάνει καθαρισμό η φόρμα επειδή ξαναφορτωνει τα πάντα καθυστερεί πολύ.

ChrisGT7 12-03-21 19:09

Από τη φόρμα χρήστη (User Form) FrmSearch, διέγραψε τελείως την υπορουτίνα UserForm_Initialize().

Rodokanator 12-03-21 19:25

Το εκανα αλλα οταν εχει αποτελεσματα απο αναζητηση και πατησεις καθαρισμο το listbox παραμενει γεματο. Προσθεσα την εντολη LsBx.Clear οταν πατιεται το κουμπι καθαρισμου αλλα παραμενει γεματο οποτε κατι κανω λαθος.

ChrisGT7 12-03-21 19:34

1 Συνημμένο(α)
Για δοκίμασε το συνημμένο αρχείο.

Rodokanator 13-03-21 21:03

Τέλεια σε ευχαριστώ πάρα πολύ!!!!

Rodokanator 15-03-21 20:04

Προσθεσα μερικα κουμπια για να επιβεβαιωσω οτι αυτοι που χρησιμοποιουν το φυλλο δεν θα τα κανουν μπαχαλο. Εφτιαξα ενα κουμπι για καταχωρηση νεων ΚΑΕ, ενα για διαγραφη και ενα για εξοδο απο τη φορμα. Η εγγραφη και η εξοδος δουλευουν μια χαρα. Στο κουμπι διαγραφης εβαλα τον εξης κωδικα

Private Sub CmdDelete_Click()
Dim i As Integer
For i = 1 To Range("A65356").End(xlUp).Row - 1
If LsBx.Selected(i) Then
Rows(i + 1).Select
Selection.Delete
End If
Next i

End Sub

ωστε οτι επιλεγει πανω στο ListBox να διαγραφει αλλα δεν μου δουλευει. Που εχω κανει το λαθος???

ChrisGT7 16-03-21 00:07

Καλημέρα Γιώργο,

Επειδή δε γνωρίζω τον τρόπο που γεμίζει το ListBox, δοκίμασε να δεις αν λειτουργεί ο παρακάτω κώδικας:
Κώδικας:

Private Sub CmdDelete_Click()
    Dim I As Long
    For I = LsBx.ListCount To 1 Step -1
        If LsBx.Selected(I) Then Rows(I + 1).Delete
    Next
    LsBx.RowSource = "A2:A" & Range("A" & Rows.Count).End(xlUp).Row
End Sub

Αλλιώς ανέβασε ένα δείγμα του αρχείου με τη φόρμα διαγραφής. Πάντως ο γενικός κανόνας όταν διαγράφουμε γραμμές είναι να ξεκινάμε ανάποδα, δηλαδή από κάτω προς τα πάνω.


Η ώρα είναι 10:08.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2