To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
Forum Oficjalnego Klubu Mitsubishi - MitsuManiaki

Komputery, RTV, AGD, Komorki - Pomoc w Excelu

Marcin-Krak - 27-06-2012, 13:48
Temat postu: Pomoc w Excelu
Mam nadzieję, że dość jasno opiszę o co mi chodzi - bo nie mam koncepcji jak o zrobić, a VB niestety nie znam na tyle :(

Otóż mam sobie arkusz w Excelu. Pokolorowany, gdzie poszczególny kolor oznacza jakiś parametr. Czy da się zrobić tak, że np jak najadę myszką na komórkę w kolorze np czerwonym, który coś tam oznacza, to pokaże nam się automatycznie przypis co ten kolor oznacza? :roll:

krzychu - 27-06-2012, 13:52

Dużo tego masz? Może wystarczy ręcznie dodać komentarze do tych pól? Można oczywiście te komentarze dodać automatem w VB ale nie mam teraz czasu, żeby sklecić kod.

Zawsze możesz włączyć rejestrowanie makra, dodać komentarz ręcznie. Sprawdzić co za kod powstał, a potem poszukać pętli i przechodzenia po polach. Do tego warunek co ma kiedy wsadzać i w sumie gotowe.

Marcin-Krak - 27-06-2012, 13:55

Gdyby się dało ręcznie, to bym tak zrobił i nie byłoby problemu ;)
Niestety jest tego trochę do tego będą zmiany :(
Nawet jakiś przykład sensownie napisanego i działającego VB już by mi ułatwił sprawę - a takiego nie udało mi się w necie znaleźć.

karolgt - 02-07-2012, 19:22

ok, tyle wystarczy :)

Kod:

Sub WordArt1_Kliknięcie()
    For Each cell In ActiveSheet.UsedRange.Cells
        If cell.Interior.Color = 255 Then
            cell.AddComment ("tresc komentarza")
        End If
       
    Next
End Sub


tu masz zrobione rozpoznawanie koloru czerwonego i dodawanie komentarza.

jak coś, to pisz/dzwoń :P

Marcin-Krak - 02-07-2012, 23:21

karolgt napisał/a:
tu masz zrobione rozpoznawanie koloru czerwonego i dodawanie komentarza.

Dzięki, jutro sprawdzę, bo ogólnie baza cały czas się rozrasta i sam nie wiem czy to w ogóle dla kogoś będzie czytelne :roll: :mrgreen:

[ Dodano: 03-07-2012, 12:55 ]
Mam pytanko jeszcze jak rozbudować żeby działało na co najmniej 3 różne kolory :wink:

karolgt - 03-07-2012, 13:44

no ok, więc tak
Program 1 dodawanie komentarzy, dodałem komentarze w kodzie żebyś wiedział co i jak

Cytat:

Sub WordArt1_Click()
Rem tutaj usuwany wszystkie komentarze
Cells.ClearComments
For Each cell In ActiveSheet.UsedRange.Cells
Rem pobieramy kolor w danej komorce
kolor = cell.Interior.Color

Rem w zaleznosci od koloru wykona odpowiedni kod
Select Case kolor
Case 255
cell.AddComment ("kolor czerwony")
Case 45
cell.AddComment ("kolor zielony")
Case 45
cell.AddComment ("kolor zielony")
End Select

Next
End Sub


a jakbyś miał za chwilę zamiar zapytać skąd wiedzieć jaki kolor to jaki kolor, to program drugi, który możesz sobie na szybko uruchomić (na pliku otwartym do testów) i wpisze Ci do każdej komórki to jaki ma kolor:

Cytat:

Sub WordArt102_Click()
For Each cell In ActiveSheet.UsedRange.Cells
cell.Value = cell.Interior.Color
Next
End Sub

[/quote]
gigant87 - 28-11-2012, 21:34

Teraz ja mam zagwozdkę. ;)
Chce ułatwić sobie pracę, mam arkusz, w którym wpisuję sobie:
- tydzień rozpoczęcia zadania,
- tydzień zakończenia zadania
- no i ile roboczogodzin muszę na to zadanie "położyć".

Ilość roboczogodzin nie wynika z czasu rozpoczęcia, ani czasu zakończenia, bo jest dzielona na różne ilości pracowników.

Dalej na prawo, na osi poziomej mam rozpisane nr tygodni. No i chciałbym zrobić taki trick, aby po wpisaniu 3 powyższych wartości, excel sam mi zaznaczał komórki odpowiadające nr tygodni na osi poziomej i jeszcze umieszczał w nich wartości rbh w danym tygodniu (czyli rbh/czas trwania w tygodniach).

Podejrzewam, że dobrze będzie jeśli podeślę komuś ten plik.

Czy byłby ktoś w stanie to ogarnąć?

Próbowałem zrobić tak:
Jeżeli (początek zadania = numerowi tygodnia z osi poziomej ; rbh/czas trwania ; 0)

No i dalej utknąłem...

JCH - 28-11-2012, 23:31

Ciężko tak na odległość pokapować o co "kaman" ale ja spróbowałem to zrobić jakoś tak:
Zamiast tego:
Cytat:
Jeżeli (początek zadania = numerowi tygodnia z osi poziomej ; rbh/czas trwania ; 0)

Zrobiłem tak (przyjmując Twoją nomenklaturę):
Cytat:
=JEŻELI(ORAZ(numer tygodnia z osi poziomej>=początek zadania;numer tygodnia z osi poziomej<=koniec zadania);rbh/czas trwania;"")

gigant87 - 28-11-2012, 23:56

Dzięki!
Rozwiązanie było tak blisko...
Jednak praca po 14-16h dziennie trochę przytępia. :)
No i formatowanie komórek było jako tekstowe, a nie liczbowe.

JCH - 29-11-2012, 14:19

gigant87 napisał/a:
Jednak praca po 14-16h dziennie trochę przytępia.
A ja wróciłem akurat z popołudniowego wyjazdu do Ostravy, dopadłem Forum..... i mnie zaciekawiło ;)

Oczywiście jakoś to tam sobie dopracuj :)

gigant87 - 29-11-2012, 19:52

JUż działa :D
Teraz udoskanalam, aby nie planowało pracy w tygodnie "wyłączone" tj weekend majowy, lipcowy postój etc

igi - 12-12-2012, 20:28

Misiaki jak uzyskać w Excelu coś takiego jak adersy komórek czyli

A1, B1, C1 i tak aż do CA1.

Ktoś wie i może mi pomóc?

karolgt - 12-12-2012, 22:05

igi napisał/a:
Misiaki jak uzyskać w Excelu coś takiego jak adersy komórek czyli

A1, B1, C1 i tak aż do CA1.

Ktoś wie i może mi pomóc?


ale co konkretnie chcesz zrobić?

JCH - 12-12-2012, 23:22

igi napisał/a:
Misiaki jak uzyskać w Excelu coś takiego jak adersy komórek czyli

A1, B1, C1 i tak aż do CA1.
Funkcja "ADRES"
igi - 02-01-2013, 11:21

Z tym sobie poradziłem i zapomniałem że tu pisałem :P

Przepraszam :)

Ale następne pytanko:

formatowanie warunkowe i funkcja suma. Excel 2007 jak to zrobić :) .

Czyli jeżeli w komórkach jest funkcja =Suma() to podświetla się na różowo ;)



Powered by phpBB modified by Przemo © 2003 phpBB Group