Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/)
-   -   [VBA] Μετακίνηση κελιών με χρώμα σε άλλη στήλη (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/4903-metakinisi-kelion-me-xroma-se-alli-stili.html)

ΔΗΜΗΤΡΙΟΣ 14-05-18 06:49

Μετακίνηση κελιών με χρώμα σε άλλη στήλη
 
1 Συνημμένο(α)
Θέλω τα κελιά με το κόκκινο χρώμα να μεταφερθούν στην στήλη Β.
Ο κώδικας κάπου έχει λάθος.
Ευχαριστώ πολύ !

Spirosgr 14-05-18 08:54

Καλημέρα
Σε πρώτη ανάγνωση, αν αλλάξει η γραμμή:
c.Offset(0, 1).Value = cell.Value
σε:
c.Offset(0, 1).Value = c.Value
ο κώδικας δουλεύει.

Παρατήρηση:
Ο κώδικας λειτουργεί με την επιλογή (Selection).
Αυτό, σίγουρα θα δημιουργήσει προβλήματα,
αν ο χρήστης ξεχαστεί και επιλέξει ένα κελί η περιοχή,
σε στήλη διαφορετική από την 1 (A) στην οποία ίσως θέλει να εργάζεται.
Αν και δεν γνωρίζουμε πως χρησιμοποιείς την εντολή,
καλό θα ήταν να προσδιοριστεί το που θα εκτελείται.
Παράδειγμα:
Κώδικας:

Sub MoveRedText1()
    Dim c As Range, rng As Range
    Set rng = Φύλλο1.Range("a1:a12")
    For Each c In rng
        If c.Font.Color = vbRed Then
          c.Offset(0, 1).Value = c.Value
            c.Offset(0, 1).Font.Color = vbRed
            c.ClearContents
            c.Font.Color = vbBlack
        End If
    Next c
End Sub

Αυτό λειτουργεί πάντα στο Φύλλο1 (κωδικό όνομα)
και στην περιοχή a1:a12, ανεξάρτητα επιλογής.

Από την άλλη, ένα ακόμα μειονέκτημα, είναι ότι τα χρώματα γραμματοσειράς,
θα πρέπει να είναι κόκκινο καθαρό (255,0,0) και μαύρο αυτόματο (0,0,0)

ΔΗΜΗΤΡΙΟΣ 14-05-18 16:05

Ευχαριστώ πολύ !


Η ώρα είναι 09:36.

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


Search Engine Optimization by vBSEO 3.3.2