Εμφάνιση ενός μόνο μηνύματος
  #2  
Παλιά 19-01-17, 14:43
Το avatar του χρήστη Spirosgr
Spirosgr Ο χρήστης Spirosgr δεν είναι συνδεδεμένος
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.321
Προεπιλογή

Σωτήρη καλώς όρισες στο ms-office.gr

Έστω λοιπόν, ότι το θέμα:
http://www.ms-office.gr/forum/excel-...-se-forma.html
είναι παρόμοιο με το ζητούμενό σου.

Αν έχεις μια φόρμα, της μορφής (βλέπε εικόνα) τότε:

Θα χρησιμοποιήσεις ένα κελί, πχ C2, ως «κουμπί» και θα εκτελεί κώδικα, με διπλό κλικ επάνω του.

Στο φύλλο της φόρμας, θα αντιγράψεις τον κώδικα:

Κώδικας:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

'Αν το διπλό κλικ δεν είναι στο κελί = ΕΞΟΔΟΣ

    If Target.Column <> 3 Then Exit Sub
    If Target.Row <> 2 Then Exit Sub

    'Το κελί προορισμού στο φύλλο Πελατολόγιο = με το κατάλληλο κελί της φόρμας.

    Sh2.Cells(2, 11).Value = Target.Offset(4, 1).Value

    'αν θέλουμε μετάβαση στο φύλλο Πελατολόγιο (αλλιώς διαγράφουμε την μπλέ γραμμή)
    Sh2.Activate

    Cancel = True
End Sub
Η γραμμή με το κόκκινο, «λέει»
Πήγαινε στο πελατολόγιο, και βάλε στο Κ2 το κελί που έχει την διεύθυνση του πελάτη (φόρμα)

Θα επαναλάβεις όσες φορές χρειάζεσαι την γραμμή.
Για όσα δηλαδή κελιά θέλεις να μεταφερθούν.

Προσέχεις τα εξής:
Όπου Sh2. θα βάλεις το κωδικό όνομα του πραγματικού φύλλου πελατολόγιο.
Το πρώτο μέρος της ισότητας είναι ο προορισμός.
Το δεύτερο η αφετηρία.
Στις παρενθέσεις, πρώτα γραμμή μετά στήλη (πχ 2,4 = κελίD2)

Το Offset, κατά τα γνωστά από το κελί C2 προς το κελί αφετηρία

Τέλος πολύ σημαντικό
αφού δεις τι κάνει ο κώδικας μεταφέροντας μια ολόκληρη γραμμή στην θέση της
θα πρέπει να αλλάξεις τους αριθμούς γραμμών του προορισμού με μια μεταβλητή
που θα βρίσκει την πρώτη κενή γραμμή στο πελατολόγιο.
Συνημμένα Thumbnails
Φόρμα και μεταφορά δεδομένων σε άλλο φύλλο-screenshot_1.png  
Απάντηση με παράθεση