2417
megoldást keresek erre a problémára
-
#1814 Vidd be ezt a kis makrót, írd át a saját területedre, és megoldja a problémádat.
Sub NukuLink()
For sor = 2 To 500 '***
Cells(sor, "C").Hyperlinks.Delete '***
Next
End Sub
A két, csillaggal jelölt sorban kell módosítanod. Ez a makró a C oszlop 2:500 sorában alakítja szöveggé a címeket.
-
soskajoska #1813 Kösz "kl24h". Ennél korrektebb választ keresek. 300-400 mail cím beírása esetén eléggé favágó módszer. Az is igaz, hogy eddig még rendszergazdáktól sem kaptam használhatóbb választ. -
kl24h #1812 Jobb klikk arra a cellára, amiben van az e-mail cím és megjelenő ablakocskában a Remove Hyperlink-re klikkelsz. -
soskajoska #1811 Van egy olyan problémám, hogy Excel-ben beírok egy cellába egy mail címet és akár akarom, akár nem hozzácsatol egy "maito:..." linket. Tud valaki segíteni hogyan lehet kikapcsolni?
Ez Excel 2000, 2003, 2007 esetében is így van! -
#1810 Makrórögzítéssel checkbox létrehozásánál ezt a kódot kaptam:
ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, _
DisplayAsIcon:=False, Left:=56.25, Top:=23.25, Width:=79.5, Height:= _
18).Select
Ezt beteheted egy feltételbe.
Nem vagyok biztos benne, hogy ezt kérdezted, nem egészen világos nekem a leírásod.
-
Mikee76 #1809 Azt szeretném kérdezni, hogy checkbox tételeket,(v. opciókat) hogyan tudok kóddal (nem statikusan, hanem más fülön lévő táblából algoritmus által szelektált tételeket) felvinni, hozzáadni, létrehozni munkalapon. -
#1808 Az Excel beállításainál a képletek kiszámítása "automatikus" opciója elől vedd ki a pipát, akkor az F9 gyorsbillentyűvel hozhatod létre az azonnali kiszámítást. A különféle, használatban lévő verziójú Exceleknél eltérő, de hasonló helyen, a beállításoknál találod meg ezt a lehetőséget. A súgó megmondja, hogy az általad alkalmazott Excelben hol találod. -
Mikee76 #1807 Azt hogyan tudom beállítani, hogy ez (vagy más) megírt függvény tényleg csak akkor fusson ha meghívódik és ne akármikor?
Pl, amikor egy másik rendszerből exportálok Excelbe egy listát VB ablak fejlécén látom, hogy 'running', mikor semmi dolga az adott munkafüzettel. Vagy amikor egy másik makró is fut az adott munkafüzeten, de semmi köze az adott függvényhez, stb.
Private/Public/Static (vagy az, hogy Sub (procedura) alá/közé teszem) milyen módon befolyásolhatja ezt, hogy mikor fut egy function? -
#1806 Azt szeretném megkérdezni, hogy a 2010-es Excel-ben meg lehet-e változtatni az alapszíneket? Az alapból kinn lévő színek nem tetszenek, állandóan a További színekbe kell belépnem. -
#1805 Szívesen. -
Storey #1804 Köszönöm! Magyszerűen működik! -
#1803
Talán most látható lesz. -
#1802
Két új sort írtam bele, amiket piros aláhúzással jelöltem. -
Storey #1801 Ismét csak zavarlak!
A le-föl mozgatáskor hogyan tudom megadni, hogy mondjuk a 6. sornál ne mozdítsa feljebb, és mondjuk az 50. sornál ne engedje lejjebb?
Előre is köszi! -
#1800 Szívesen. -
Storey #1799 Nagyon köszi minden segítséget Delila! Egy rettentően fontos dologra segítettél rájönni: EXCELBEN SOHA NE EGYESÍTS CELLÁKAT!!!!!! Az mindent összezavarhat!
Mindent köszi!
-
#1798 Még mindig nem vagyok látnok! -
Storey #1797 Szia!
Alakul a dolog! Természetesen ismét csak én voltam a ludas a dologban. Volt egy rejtett munkalap is az első előtt(amire egyébként szükség van), és ezért nem működött! Amikor ezt beállítottam, a hiba megoldódott. De továbbra sem tökéletes, mert azon a két lapon, ahol el szeretném rejteni az ominózus oszlopokat, az egész táblázat eltűnik, nem csak az a néhány oszlop aminek el kellene! Próbálgattam kicsit belenyúlni(szerény tudásom alapján) de nem jártam sikerrel.
Itt tartok most! -
#1796 Küldd el privátban a fájlt, megnézem, mi lehet a baj. -
Storey #1795 Bekapcsoltam, és az eredmény ugyanaz.
A piszkálásról: csak eegy sorral bővítettem az együtt mozgó sorokat, valamint egy oszloppal el kellett tolni az egészet. Természetesen ezek semmiségnek nevezhetőek. A munka teljes egészét te végezted, amiéer hála és köszönet! -
#1794 Bekapcsoltad az Analysis ToolPak és az Analysis ToolPak-VBA nevű 2 bővítményt?
Office gomb | Az Excel beállításai | Bővítmények | Excel bővítmények | Ugrás.
Mit piszkáltál? -
Storey #1793 Óriási köszönet.
A sorok mozgatása kicsi "belepiszkálás" után csodálatosan működik. De az oszlopok elrejtését nem tudom életre kelteni. Indítás után a következő hibaüzenet ugrik fel: RUN-Time error'1004' Worksheet osztály select metódusa hibás. Próbálkoztam itt is a dolgot kicsit pofozgatni(szerény tudásom alapján), de nem sikerült semmit kezdeni vele.
Ismét csak nagy köszönet!
-
#1792 Tegyél ki gombokat, vagy rajz objektumokat a Lista lapra, és rendeld hozzájuk a makrókat.
Sub Fel()
Dim sor As Integer, lap%, WS As Worksheet, B, C
Application.DisplayAlerts = False
sor = Selection.Row
B = Cells(sor, "B"): C = Cells(sor, "C")
For lap% = 1 To 3
Set WS = Sheets(lap%)
WS.Range("B" & sor) = WS.Range("B" & sor - 1)
WS.Range("C" & sor) = WS.Range("C" & sor - 1)
WS.Range("B" & sor - 1) = B
WS.Range("C" & sor - 1) = C
Next
Application.DisplayAlerts = True
Sheets("Lista").Range("B" & sor - 1).Select
End Sub
Sub Le()
Dim sor As Integer, lap%, WS As Worksheet, B, C
Application.DisplayAlerts = False
sor = Selection.Row
B = Cells(sor, "B"): C = Cells(sor, "C")
For lap% = 1 To 3
Set WS = Sheets(lap%)
WS.Range("B" & sor) = WS.Range("B" & sor + 1)
WS.Range("C" & sor) = WS.Range("C" & sor + 1)
WS.Range("B" & sor + 1) = B
WS.Range("C" & sor + 1) = C
Next
Application.DisplayAlerts = True
Sheets("Lista").Range("B" & sor + 1).Select
End Sub
Sub Rejt()
Dim oszlop%, lap%
For oszlop% = 36 To 6 Step -1
If Sheets("Lista").Cells(5, oszlop%) = "" Then
For lap% = 1 To 3
Sheets(lap%).Select
Columns(oszlop%).Select
Selection.EntireColumn.Hidden = True
Cells(1).Select
Next
End If
Next
Sheets("Lista").Select
End Sub
Sub Felfed()
Dim lap%
For lap% = 1 To 3
Sheets(lap%).Select
Cells.Select
Selection.EntireColumn.Hidden = False
Cells(1).Select
Next
Sheets("Lista").Select
End Sub
-
Storey #1791 Bocsánat, teljesen igazad van!
Minden lapon az 5. sor F oszloptól az AJ oszlopig tartó terület alapján szeretném elrejteni az oszlopokat. Amelyik cella üresen marad, annak az oszlopa rejtődjön el. Az első munkalap neve Lista, a második Munka, a harmadik pedig Jegyzőkönyv.
Még egy gondom adódott, a sorok mozgatásával kapcsolatban. A fentebb megnevezett Munkalapok közül a Lista nevűn mozgatom az összetartozó cellákat. Ez eddig nagyszerűen működik is. Csakhogy a Másik két lapra ezekből a cellákból kerül át az adat egy egyszerű hivatkozással. A gond ott van, hogy mozgatáskor a másik két lapon ugyanaz marad a sorrend, mint volt, miközben a sorrend az fontos volna, tehát ugyanaz a sorrend kellene mint az első lapon.
Ismét csak köszi!
-
#1790 Ki kellene találnom, melyik oszlopban kezdődik az "adathordozó" rész, melyik sorban van, és hogy milyen nevet adtál a "FŐ" lapnak, meg a másik kettőnek? Találgathatok, de akkor át kell írnod a makrókat. -
Storey #1789 Ismét köszi a fáradozásod!
A gondom csak az, hogy az "adathordozó" rész, az nem az A oszloptól kezdődik, hanem "beljeb", és a kettő között is fontos adatok vannak. A másik gond pedig az, hogy ez az úgymond "FŐ" munkalapon beállított sorokat rejti el, és én nem ezt akarom, mert az csak a "minta". A másik két munkalapon szeretném elrejteni az oszlopokat(ahol egyébként ugyanúgy megtalálható ez a bizonyos "adathordozó" sor, de ott sem az A oszloptól kezdődik).Tehát: fő lapon beállítom, elindítom a makrót, a másik két munkalapon pedig elrejti a minta alapján az oszlopokat.
Nagyon köszi! -
#1788 Kineveztem az 5. sort "adathordozó"-nak. Az ebben lévő üres cellák alapján rejti az oszlopokat a Rejt makró, a Felfed pedig az összes oszlopot felfedi.
Sub Rejt()
Dim oszlop%, sor%, uoszlop%
sor% = 5 'Ezt írd át annyira, ahányadik sor alapján akarsz rejteni
uoszlop% = Range("XFD" & sor%).End(xlToLeft).Column
For oszlop% = uoszlop% To 1 Step -1
If Cells(sor%, oszlop%) = "" Then Columns(oszlop%).Hidden = True
Next
End Sub
Sub Felfed()
Cells.Select
Selection.EntireColumn.Hidden = False
End Sub
-
Storey #1787 2007-es Excelt használok. A következő dolgot szeretném megoldani. Van 3 különböző munkafüzetem, de van egy közös rész(ami egy sor,kezdéskor bevitt adatokkal), amiben csak az első munkalapon szeretném az adatokat beállítani(változó, hogy hány oszlopra van szükség, és ez a bizonyos sor megtalálható a másik két munkafüzetben is), és ennek alapján mutassa, vagy rejtse el a másik két munkafüzetben az oszlopokat(jelen esetben azokat, amelyek ebben a bizonyos közös sorban üresen maradnak, és ennél fogva nem kellenek). Nem ragaszkodom a makróhoz, bármilyen megoldás érdekel!
Köszi a sok segítséget! -
#1786 Szívesen, nem zaklatsz.
Természetesen lehet rá makrót írni, de ahhoz több dolgot kellene tudnom.
Makró nélkül is megoldhatod gombnyomásra. A súgóban keress rá az Egyéni nézetre. Különféle nézeteket állíthatsz elő, pl. rejtett, és nem rejtett oszlopokkal. Ikont is tehetsz ki a választáshoz. Ennek a módja függ az Excel verziójától.
Ha nem jön össze, írd meg, melyik verzióval dolgozol. -
Storey #1785 Hatalmas köszönet! Így már tökéletes!
Szeretnék még egy dolgot kérdezni, remélem nem viszem túlzásba. A kérdésem a következő: Van egy munkalapom, amelynek egy bizonyos sorában lévő adatok alapján van amikor kell, van amikor nem néhány oszlop. Ezeket a nem használt oszlopokat egyszerűen elrejtem. Van egy másik munkalapom, ahol tulajdonképpen az eredmények szerepelnek, és az a rész ami szerint el szeretném rejteni az oszlopokat ugyanaz, mint az első munkalapon. Megoldható az, hogy az eredmény lapon az első munkalaphoz hasonlóan automatikusan "elrejtődjenek" a nem használt oszlopok?
Mégegyszer köszi, és bocs a sok zaklatásért! -
#1784 A két lenti makrónál elég a mozgatni kívánt sorban egy cellára állni.
Az ideiglenes hely a K:L oszlop.
Sub Fel_1()
Dim sor As Integer
sor = Selection.Row
Range("B" & sor & ":C" & sor).Cut Destination:=Range("K" & sor & ":L" & sor)
Range("B" & sor - 1 & ":C" & sor - 1).Cut Destination:=Range("B" & sor & ":C" & sor)
Range("K" & sor & ":L" & sor).Cut Destination:=Range("B" & sor - 1 & ":C" & sor - 1)
Range("B" & sor - 1).Select
End Sub
Sub Le_1()
Dim sor As Integer
sor = Selection.Row
Range("B" & sor & ":C" & sor).Cut Destination:=Range("K" & sor & ":L" & sor)
Range("B" & sor + 1 & ":C" & sor + 1).Cut Destination:=Range("B" & sor & ":C" & sor)
Range("K" & sor & ":L" & sor).Cut Destination:=Range("B" & sor + 1 & ":C" & sor + 1)
Range("B" & sor + 1).Select
End Sub
-
Storey #1783 Nagyon köszi a segítséget! De még egy kicsit nyavajognék, ha nem okoz gondot. Ez így jól működik, csak minden egyes mozgatáskor újra kell jelölni. Az lenne a jó, ha a mozgatott cella maradna az aktív. Ez azért lenne fontos, mert lehet, hogy adott esetben akár 4-5 sorral is lejjebb, vagy feljebb kell mozgatni a cellákat. Illetve ne kelljen mindig mindkét cellát kijelölni, hanem elég legyen csak a B oszlop mozgatandó cellájába kattintani, és automatikusan vigye magával a C oszlopból hozzá tartozó adatot.
Még egyszer nagyon köszi! -
#1782 Szívesen. -
#1781 mégiscsak ezzel a szöveg vagy szám dologgal volt a hiba.. köszi a segítséget -
#1780 Kijelölöd a B:C tartományban a területet, amit ki akarsz cserélin a fölötte, ill. alatta lévő területtel.
A makrók a kijelölt adatokat ideiglenesen átteszik a H:I oszlopok azonos soraiba. Az eredeti területre áthúzzák a fölötte, ill. alatta lévő adatokat, majd a megüresedett helyre bemásolják az ideiglenes terület adatait.
Sub Fel()
Dim sor As Integer, ter As Range, sorok As Integer, terM As String
Set ter = Selection
sor = Selection.Row
sorok = ter.Rows.Count
terM = "H" & sor & ":I" & sor + sorok - 1
Selection.Cut Destination:=Range(terM)
Range("B" & sor - sorok & ":C" & sor - 1).Cut Destination:=Range("B" & sor)
Range(terM).Cut Destination:=Range("B" & sor - sorok & ":C" & sor - 1)
End Sub
Sub Le()
Dim sor As Integer, ter As Range, sorok As Integer, terM As String
Set ter = Selection
sor = Selection.Row
sorok = ter.Rows.Count
terM = "H" & sor & ":I" & sor + sorok - 1
Selection.Cut Destination:=Range(terM)
Range("B" & sor + sorok & ":C" & sor + sorok + sorok - 1).Cut Destination:=Range("B" & sor)
Range(terM).Cut Destination:=Range("B" & sor + sorok & ":C" & sor + sorok + sorok - 1)
End Sub
Ha a H:I tartomány foglalt, a makróban írd át ezeket a betűket, de mindenképp egymást követő 2 oszlop betűjelére.
-
Storey #1779 Ez már alakul, csakhogy így egyrészt minden mozgatáskor bele kell kattintani a cellába, mert nem az marad az aktív cella, másrész a mozgatás irányában lévő cellatartalom törlődik. Én azt szeretném, hogy tulajdonképpen helyet cseréljenek a cellák az adott irányban, és a mozgatott cellák maradjanak az aktívak(ez azért fontos, hogy egyesével ugyan, de akár több sorral is lehessen mozgatni le-föl).
Azért nagyon köszönöm! -
#1778 Próbáld így:
Sub Feljebb()
Dim sor As Integer
sor = ActiveCell.Row
Range(Cells(sor, 2), Cells(sor, 3)).Cut Destination:=Range(Cells(sor - 1, 2), Cells(sor - 1, 3))
End Sub
Sub Lejjebb()
Dim sor As Integer
sor = ActiveCell.Row
Range(Cells(sor, 2), Cells(sor, 3)).Cut Destination:=Range(Cells(sor + 1, 2), Cells(sor + 1, 3))
End Sub
-
Storey #1777 Sziasztok!
Két dologban kérném a segítségeteket.Írtam egy kis makrót, amely egy táblázatban mozgatja a cellák tartalmát. Csakhogy valamiért a lefelé való mozgatás nem működik. Az is problémám még, hogy a 4 oszlopos táblázatom, két középső, összetartozó celláit szeretném együtt mozgatni, de a makró viszi az első oszlopot is. Erről a makrólól lenne szó:
Sub feljebbtesz()
'
' feljebbtesz Makró
'
'
'Cells(ActiveCell.Row, 1).Select
Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 3)).Select
Application.CutCopyMode = False
Selection.Cut
Range(Cells(ActiveCell.Row - 1, 1), Cells(ActiveCell.Row - 1, 3)).Select
Selection.Insert Shift:=xlDown
End Sub
Sub lejjebbtesz()
'
' feljebbtesz Makró
'
'
'Cells(ActiveCell.Row, 1).Select
Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 3)).Select
Application.CutCopyMode = False
Selection.Cut
Range(Cells(ActiveCell.Row + 1, 1), Cells(ActiveCell.Row + 1, 3)).Select
Selection.Insert Shift:=xlDown
End Sub
Előre is köszi a segítséget! -
#1776 Lehet, hogy mégis szám a keresendő érték. Add meg így:
Function Cegkod(Projektszam As Variable, Tartomany As Range) -
#1775 Nálam ez működik.
Function Cegkod(Projektszam As String, Tartomany As Range)
Cegkod = Application.WorksheetFunction.VLookup(Projektszam, Tartomany, 1, False)
End Function