Hirdetés
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- Chosen: Intel Arc B580 játék kompatibilitás (2026.01)
- eBay-es kütyük kis pénzért
- sziku69: Fűzzük össze a szavakat :)
- Candy: Kossuth Lajos azt üzente, elfogyott a gémergépe
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- potyautas: Okos?telefon
- sh4d0w: Nyitlocker
-
LOGOUT
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Fferi50
Topikgazda
válasz
Acustic
#35716
üzenetére
Szia!
Az alábbi makrókat bemásolod egy modulba. Majd hozzárendelheted az általad kívánt billentyű kombinációhoz:
Public frm As CellFormat
Sub névminta()
'
' névminta Makró
' ctrl+n a neveket előbb besárgítja, majd kereső funkcióra áll, megtalálja az első nevet.
'
' Billentyűparancs: Ctrl+n
'
'Dim frm As CellFormat
Dim frm1 As Range, frm2 As Range
If frm Is Nothing Then Set frm = Application.ReplaceFormat
Set frm1 = Range("I1")
Set frm2 = Range("I2")
frm.Clear
With frm 'Application.ReplaceFormat
.HorizontalAlignment = frm1.HorizontalAlignment 'xlRight
.VerticalAlignment = frm1.VerticalAlignment ' xlTop
With .Font
.Name = frm1.Font.Name ' "Arial"
.FontStyle = frm1.Font.FontStyle ' "Normál"
.Size = frm1.Font.Size ' 12
.Color = frm1.Font.Color ' vbBlack
End With
.Borders.LineStyle = xlNone
With .Interior
.PatternColorIndex = frm1.Interior.PatternColorIndex ' xlAutomatic
.Color = frm1.Interior.Color ' 65535
End With
.Locked = True
.FormulaHidden = False
End With
Columns("A:A").Replace what:=Range("H1").Value, replacement:=Range("H1").Value, LookAt:=xlWhole, _
searchorder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
Application.EnableEvents = False
Cells.Find(what:=Range("H1").Value, LookIn:=xlFormulas, LookAt _
:=xlWhole, searchorder:=xlByColumns, MatchCase _
:=False, SearchFormat:=False).Activate
With frm 'Application.ReplaceFormat
.HorizontalAlignment = frm2.HorizontalAlignment ' xlLeft
.VerticalAlignment = frm2.VerticalAlignment ' xlTop
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
With .Font
.Name = frm2.Font.Name ' "Arial"
.FontStyle = frm2.Font.FontStyle ' "Normál"
.Size = frm2.Font.Size ' 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.Color = -16776961
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End With
Application.EnableEvents = True
End Sub
Sub nevpiros()
'A H1 cellában levő nevet az A oszlopban "bepirosítja"
Dim frm1 As Range, frm2 As Range
If frm Is Nothing Then Set frm = Application.ReplaceFormat
Set frm1 = Range("I1")
Set frm2 = Range("I2")
With frm 'Application.ReplaceFormat
.HorizontalAlignment = frm2.HorizontalAlignment ' xlLeft
.VerticalAlignment = frm2.VerticalAlignment ' xlTop
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
With .Font
.Name = frm2.Font.Name ' "Arial"
.FontStyle = frm2.Font.FontStyle ' "Normál"
.Size = frm2.Font.Size ' 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.Color = -16776961
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End With
Range("A:A").Replace what:=Range("H1").Value, replacement:=Range("H1").Value, ReplaceFormat:=True
End SubA billentyű hozzárendelést neked kell megtenni.
Az első sor is fontos, ami a sub előtt van. Itt definiálunk egy olyan változót, amelynek az értéke megmarad mindaddig, amíg ki nem léptél az excelből.Ha még jobban automatizálni szeretnéd, akkor a következő két makrót a munkalap kódlapjára kell bemásolnod: (jobb egérgomb a munkalap fülön, kód megjelenítése)
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 8 And Target.Row = 1 Then 'ha új nevet írsz a H1 cellába
Application.EnableEvents = False
névminta
Application.EnableEvents = True
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim cl As Range
If Target.Column = 1 Then 'ha a H1 cellában levő névre léptél, az előzőt "bepirosítja"
If Target.Value = Range("H1").Value Then
If Target.Row > 1 Then
Application.EnableEvents = False
Set cl = Columns("A:A").Find(what:=Target.Value, after:=Target, searchdirection:=xlPrevious)
If Not cl Is Nothing Then cl.Replace what:=Target.Value, replacement:=Target.Value, ReplaceFormat:=True
Application.EnableEvents = True
End If
End If
End If
If Target.Column = 8 And Target.Row = 1 Then ' az utolsó nevet is elérted, ezért a H1 cellára ugrottál - az utolsó nevet is megváltoztatja
Set cl = Columns("A:A").Find(what:=Target.Value, after:=Columns("A:A").End(xlUp), searchdirection:=xlPrevious)
If Not cl Is Nothing Then cl.Replace what:=Target.Value, replacement:=Target.Value, ReplaceFormat:=True
End If
End SubAz első akkor lép működésbe, ha a H1 cellába beírsz egy nevet. Ekkor automatikusan megjelöli az A oszlopban mindazokat a cellákat, amelyben az a név van.
A második azt figyeli, hogy az új cellában, amire léptél, a H1 -ben levő név van-e. Ha igen, akkor az előző nevet megváltoztatja (pirosítja).
Ugyanígy jár el az utolsó névvel, ha a H1 cellára ugrasz.
Nem kell azonnal a következő névre (H1 cellára) ugrani, amikor a lefelé "sétálásban" ugyanarra a névre lépsz, akkor lép működésbe.Remélem érthető, ha nem, akkor kérdezz bátran.
Üdv.
Új hozzászólás Aktív témák
Hirdetés
- Anglia - élmények, tapasztalatok
- Batch programozás
- Nyaralás topik
- Milyen okostelefont vegyek?
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- Elektromos autók - motorok
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- TCL LCD és LED TV-k
- Autós topik
- OnePlus 15 - van plusz energia
- További aktív témák...
- Decathlonos 43-as boxcipő, alig használt, hibátlan állapotban
- iPhone XR 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3993, 100% Akkumulátor
- Jura Impressa S90 Automata kávégép 6 hónap Garancia Beszámítás Házhozszállítás
- AKCIÓ! Apple Studio Display 27 5K Nanotexturált üveg monitor garanciával hibátlan működéssel
- SteelSeries Apex Gaming billentyűzet, német, RGB
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50
