Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  111 112 113 114 115 116 117 118 119   další » ... 122

Fajn, tak vyskúšaj to makro a vyjadri sa, či funguje podľa predstáv. Mne to totiž z Tvojich doterajších vyjadrení jasné nie je 2

Marjan, záleží asi i na tom, či sa majú preniesť referencie smerované pôvodne na A na bunky v stĺpci C.
Ďalej na tom, či náš borec chce preniesť hodnoty z celého stĺpca A, alebo len z vybraných buniek do korešpondujúcich riadkov v stĺpci C. Ale pravdou je, že nie jeden užívateľ tu predvádza snahu chodiť s kanónom na komára :). Mne to nevadí, sú tu potom z toho také päťminútové rozcvičky z písania nepotrebných kódov, na precvičovanie dobré :)

Borče, my sme tu trošku jednoduchší ľudia a žiadni borci, nemáme vizionárske schopnosti, takže pokiaľ budeš vo vysvetľovaní svojej požiadavky skúpy na slovo, nezostáva nám, než hádať, čo vlastne potrebuješ dosiahnuť.

Môžeš vyskúsať nasledovné: označ si bunky v stĺpci A (kliknutím do bunky, oblasti buniek, či celého stĺpca), ktoré chceš dostať do stĺpca C a spusti kód:

Sub PresunDoC()
Dim cell As Range
If Selection.Address = Range("A:A").Address Then
Columns("A:A").Copy
Range("C1").PasteSpecial Paste:=xlPasteValues
Range("A:A").Select
Application.CutCopyMode = False
Else:
For Each cell In Selection.Cells
If cell.Column = 1 Then cell.Offset(0, 2).Value = cell.Value
Next
End If
End Sub

pokiaľ riešenie vyhovuje, tak si vytvor tlačítko a tento kód si naň naviaž :)
Nie je to síce optimálny kód, čo sa týka rýchlosti behu, ale pokiaľ nebudeš označovať nejaké iné stĺpce a skúšať rôzne blbosti, tak by to mohlo fungovať, zhruba ako má. Otázkou je, čo chceš s hodnotou v stĺpci A po tom, čo ju presunieš do stĺpca C. Pokiaľ sa má zo stĺpca A zmazať, tak mačkaj delete. Dalo by sa to zakomponovať i do toho kódu rovno, ale ako som zmienil, musel by si sa viac rozrozprávať, aby bola Tvoja potreba zrejmejšia i nám blbým 1 .

drapni eLCHu, to čo potrebuješ, nie je nijak zložité, on Ti to poladí k max spokojnosti a nemusíš čakať na mňa, fakt neviem, kedy budem ready to help here

to on bol, ja som si to testoval na nejakom svojom cvičnom sheete, ale fakt mi to nefungovalo, neviem, čím to, nejako som to neskúmal, hele, poraď klukovi s tým csv, ja už vypínam, dík a čaues

eLCHa, tak na to sa pozriem, to vyzerá hooodne dobre, dík za tip!

Chlape, môžem na to hodiť oko,ale hneď to nebude. Po prebdenej noci ma rozbolela hlava, takže za moment mažem do postele a zobudím sa neviem kedy pri svojich spacích zvykoch medveďa. Ale zrovna tu vyšíva eLCHa, to, čo potrebuješ, je trivialita a on to dá, počítam, behom minúty dokopy.

to je pravda,ale pokiaľ chce niekto výber z rozbaľovacieho menu, tak prečo nie??

eLCHa, to mi práve hádzalo nejakú chybovú hlášku, nepamätám si presne, o čo šlo, ale pri debugu sa to zarazilo práve tam, tak som to obišiel tým intersectom..

myslím, že som to tam dal, nefunguje to? Teda, predpokladám, že pokiaľ je prvý prázdny A-D od riadku napr 20, tak i ostatné stĺpce sú už od daného riadku prázdne. Niekedy viac pomôže súbor s vyznačením, čo vlastne chceš, než krkolomný popis...

=NAHRADIT(NAHRADIT(A1;2;1;8);5;1;3)

Sub VytvorCSV()
Intersect(Range("A8").CurrentRegion, Range("A8:D9999")).Copy
Workbooks.Add
Selection.PasteSpecial Paste:=xlPasteValues
ActiveWorkbook.SaveAs Filename:= _
Format(Now, "YYMMDDHHMMSS") & ".csv", FileFormat:=xlCSV, _
CreateBackup:=False
End Sub

Hlavne daj vedieť, či to zabralo, alebo bude treba to poriešiť nejak inak. Ahoj.

miesto tých dvoch riadkov skús dať rovno:

Intersect(Selection.SpecialCells(xlCellTypeVisible), Selection.CurrentRegion).Copy

Mohlo by to zafungovať. Inak pozerám do Tvojich predošlých dotazov a zisťujem, že sa nenamáhaš poskytnúť spätnú väzbu, pokiaľ Ti niekto poradí. Tak váham, či takýmto charakterom má zmysel nejako pomáhať..

Povedzme, že na konkrétnom liste si v bunke A1 vyberáš zvolený list cez overenie dát pomocou výberu zo zoznamu.
Do kódového okna daného listu nakopíruj:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("A1") Then Sheets(Range("A1").Value).Select
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target = Range("A1") Then Sheets(Range("A1").Value).Select
End Sub


Stačilo by asi udalostné makro pre Worksheet_SelectionChange, ale v kombinácii s Worksheet_Change to funguje spoľahlivejšie.
Pokiaľ budeš chcieť opakovane odskočiť do rovnakého listu, bez toho, aby si menil hodnotu v bunke A1, stačí klik do nej a následne klik mimo nej.


Strana:  1 ... « předchozí  111 112 113 114 115 116 117 118 119   další » ... 122

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse