< návrat zpět

MS Excel


Téma: VBA IF AND rss

Zaslal/a 25.2.2018 8:21

ahojte, potřeboval bych malou pomoc, nějak mi nefunguje funkce IF pod VBA a nevím, kde je problém. Lepší viz. příloha. Logika je: Když bude ve sloupci D napsáno "cvt" tak pokud ve sloupci B nebude napsáno "/2018", tak "/2018" přidej ke stávajícímu textu ve sloupci B.

Mě to ale přidává text "/2018" pořád dokola tam, kde ve sloupci D není napsáno "cvt". Přitom když ve sloupci D není to "cvt" napsáno, tak s buňkou ve sloupci B nechci nic dělat.

Poradíte někdo? Díky
Dalibor

Příloha: zip39671_test.zip (11kB, staženo 27x)
Zaslat odpověď >

#039672
elninoslov
Ja som z tých podmienok trochu pomotaný, ale skúste toto. Uvádzam len ako príklad na to aby som ja pochopil logiku :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

For i = 1 To 10
If InStr(Cells(i, 2).Value, "2018") > 0 Then
Cells(i, 3).Value = "OK"
Else
If InStr(Cells(i, 4), "cvt") > 0 Then
Cells(i, 2) = Cells(i, 2) & "/2018"
Cells(i, 3).Value = "OK"
Else
Cells(i, 3).Value = ""
End If
End If
Next i
End Sub

Každopádne, o koľko ide reálne dát ? Je nevhodné to robiť bunku po bunke na väčšom množstve dát - bude to pomalé. Navyše po každom označení bunky? To by bolo lepšie po každej zmene bunky, nie po označení, s tým že by sa na začiatok a koniec vypli/zapli Application.EnableEvents=False (True).
Ten cyklus má mať vždy 10 riadkov ?
OK sa má napísať vždy keď B obsahuje 2018, bez ohľadu na to či je v D hodnota "cvt" alebo nie ?citovat
#039673
avatar
logiku věci jste pochopil správně, kod funguje. Bohužel se bude jednat o cca 2500 řádků, takže by to bylo opravdu pomalé.

Funkčně by to mělo vypadat tak, že někdo napíše do sloupce B číslo a do sloupce D "cvt" a na základě těchto dvou podmínek se k tomu číslu B přidá "/2018".

Pokud ve sloupci D nebude "cvt" tak s buňkou ve sloupci B se nic nestane.

To "OK" tam nemá žádný význam, ve finálním souboru nebude, to bylo jen pro mou informaci, že to něco dělá.citovat
#039675
elninoslov
Pr.
Příloha: zip39675_test.zip (15kB, staženo 36x)
citovat
#039676
avatar
tak tomuhle kódu vůbec nerozumím, ale funguje to tak, jak má. Díky moc za help.

Daliborcitovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje