Wypowiedzi
-
Najprościej, to chyba takie makro pomoże:
Sub Ukrywanie()
For i = 10 To 500
If Cells(i, 4) + Cells(i, 5) + Cells(i, 6) + Cells(i, 7) = 0 Then
Rows(i).Hidden = True
End If
Next i
End Sub -
Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy EXCEL w praktyce
-
Można tak:
zdefiniuj funckję :
Function DataTeraz() As Date
DataTeraz = Now()
End Function
w komórce wpisz (komórka musi być sformatowana jako data):
=JEŻELI(D3>C3;DataTeraz ();"0") -
Jedyne co mi do głowy przychodzi to takie makro:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim a As String
If Target = Range("B1") Then
a = Range("A1") & Range("b1") & Range("c1")
Range("d1") = a
End If
End Sub
w A1 - ='E:/Grupa 1/ (musi być format tekstowy)
w B1 - 001
w C1 - /[KARTA.ods]Arkusz1!B86
w D1 powinno pokazać szukaną wartość - odświeży się jak zmienisz B1 -
Jeśli chodzi o pytanie 2:
Jeśli wpiszesz do komórki np.
A1 - file:///E:/Grupa 1/
B1 - 001 (musi być format tekstowy komórki żeby nie skróciło 001 do 1)
C1 - /KARTA.ods'#$Arkusz1.B86
D1 - =HIPERŁĄCZE(A1&B1&C1)
to teraz możesz zmieniać komórkę B1 i zmieni ci się hiperłącze w komórce D1 -
Jeśli chodzi o pole wyszukiwania możesz użyć makra, które się uruchomi jak zmieni się komórka, w tym przypadku f1.
Poniższa procedura sprawdza czy wartość z komórki f1 jest w pierwszej lub drugiej kolumnie (dotyczy pierwszych 30 wierszy), jeśli znajdzie to wpisuje do czwartej kolumny. Możesz to sobie do własnych potrzeb dostosować.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Cells(1, 6) Then
Dim komorkaf1 As String
For i = 1 To 30
komorkaf1 = Cells(1, 6).Value
If komorkaf1 = Cells(i, 1) Or komorkaf1 = Cells(i, 2) Then
Cells(i, 4) = komorkaf1
End If
Next i
End If
End Sub