Note: The other languages of the website are Google-translated. Back to English
English English
  • Dokumenty
  • vynikat
  • Jak vlookup a vrátit odpovídající hodnotu s komentářem buňky?

Jak vlookup a vrátit odpovídající hodnotu s komentářem buňky?

Když použijete funkci Vlookup k vrácení odpovídající hodnoty, extrahuje pouze hodnotu bez formátování, jako je barva výplně, písmo nebo komentář atd. Někdy však možná budete muset vlookup a vrátit odpovídající hodnotu včetně komentáře získat následující výsledek obrazovky. Jak byste mohli vyřešit tuto práci v aplikaci Excel?

Vlookup a návrat odpovídající hodnoty s komentářem buňky pomocí kódu VBA


Vlookup a návrat odpovídající hodnoty s komentářem buňky pomocí kódu VBA

Níže uvedený kód VBA vám může pomoci vlookup a vrátit odpovídající hodnotu s komentářem, postupujte takto:

1. Podržte ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modul, poté zkopírujte a vložte následující kód do souboru Modul Okno.

Kód VBA: Vlookup a návrat odpovídající hodnoty s komentářem buňky:

Function VlookupComment(LookVal As Variant, FTable As Range, FColumn As Long, FType As Long) As Variant
'Updateby Extendoffice
    Application.Volatile
    Dim xRet As Variant 'could be an error
    Dim xCell As Range
    xRet = Application.Match(LookVal, FTable.Columns(1), FType)
    If IsError(xRet) Then
        VlookupComment = "Not Found"
    Else
        Set xCell = FTable.Columns(FColumn).Cells(1)(xRet)
        VlookupComment = xCell.Value
        With Application.Caller
            If Not .Comment Is Nothing Then
                .Comment.Delete
            End If
            If Not xCell.Comment Is Nothing Then
                .AddComment xCell.Comment.Text
            End If
        End With
    End If
End Function

3. A poté uložte kód a zavřete okno s kódem, zadejte tento vzorec: = vlookupcomment (H2, A2: C10,3, FALSE) do prázdné buňky vyhledejte výsledek a stiskněte vstoupit klíč, shodná hodnota i komentář se vrátí najednou, viz screenshot:

Poznámka: Ve výše uvedeném vzorci, H2 je vyhledávací hodnota, kterou chcete vrátit odpovídající hodnotu, A2: C10 je datová tabulka, kterou chcete použít, číslo 3 je číslo sloupce, které obsahuje odpovídající hodnotu, kterou chcete vrátit.


Nejlepší kancelářské nástroje produktivity

Kutools pro Excel vyřeší většinu vašich problémů a zvýší vaši produktivitu
80%

  • Opakované použití: Rychle vložte složité vzorce, grafy a cokoli, co jste dříve používali; Šifrovat buňky s heslem; Vytvořte seznam adresátů a posílat e-maily ...
  • Super Formula Bar (snadno upravit více řádků textu a vzorce); Rozložení pro čtení (snadno číst a upravovat velké množství buněk); Vložit do filtrovaného rozsahu...
  • Sloučit buňky / řádky / sloupce bez ztráty dat; Rozdělit obsah buněk; Zkombinujte duplicitní řádky / sloupce... Zabraňte duplicitním buňkám; Porovnat rozsahy...
  • Vyberte možnost Duplikovat nebo Jedinečný Řádky; Vyberte prázdné řádky (všechny buňky jsou prázdné); Super hledání a fuzzy hledání v mnoha sešitech; Náhodný výběr ...
  • Přesná kopie Více buněk beze změny odkazu na vzorec; Automaticky vytvářet reference do více listů; Vložte odrážky, Zaškrtávací políčka a další ...
  • Extrahujte text, Přidat text, Odebrat podle pozice, Odebrat mezeru; Vytváření a tisk mezisoučtů stránkování; Převod mezi obsahem buněk a komentáři...
  • Super filtr (uložit a použít schémata filtrů na jiné listy); Rozšířené řazení podle měsíce / týdne / dne, frekvence a dalších; Speciální filtr tučnou kurzívou ...
  • Kombinujte sešity a pracovní listy; Sloučit tabulky na základě klíčových sloupců; Rozdělte data do více listů; Dávkový převod xls, xlsx a PDF...
  • Více než
    300
    výkonné funkce
    . Podporuje Office/Excel
    2007-2019 a 365
    . Podporuje všechny jazyky. Snadné nasazení ve vašem podniku nebo organizaci. Plné funkce
    30
    -denní zkušební verze zdarma. 60denní záruka vrácení peněz.
karta kte 201905

Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu tím
    50%
    a každý den vám sníží stovky kliknutí myší!
officetab dno
Komentáře (20)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Jak bych udělal totéž jako Hlookup místo vlookup?

Kód jsem změnil následovně:
Funkce hlookupComment (LookVal As Variant, FTable As Range, Frow As Long, FType As Long) As Variant
'Aktualizovat Extendoffice
Aplikace
Dim xRet As Variant 'může být chyba
Dim xCell As Range
xRet = Application.Match(LookVal, FTable.Rows(1), FType)
If IsError(xRet) Then
hlookupComment = "Nenalezeno"
Jiný
Nastavit xCell = FTable.Rows(Frow).Cells(1)(xRet)
hlookupComment = xCell.Value
S aplikací Application.Caller
Pokud ne .Comment Is Nothing Then
.Komentovat.Smazat
End If
If Not xCell.Comment Is Nothing Then
.AddComment xCell.Comment.Text
End If
Konec s
End If
End Function
Tento komentář byl moderátorem webu minimalizován
Existuje způsob, že komentář vlookup zkopíruje formátování původního komentáře? Některé z mých komentářů jsou velmi dlouhé, ale komentář vrácený z vlookupu má vždy standardní malou velikost, takže nemohu přečíst celý text
Tento komentář byl moderátorem webu minimalizován
Dobrý den, Karle,
Možná neexistuje přímá cesta k vyřešení vašeho problému, ale můžete ručně přetáhnout pole s komentářem. Nebo můžete použít naši funkci automatického přizpůsobení komentářů Kutools pro Excel, může vám pomoci upravit pole komentáře tak, aby odpovídalo obsahu. Děkujeme!
Tento komentář byl moderátorem webu minimalizován
Můžeme použít buňku ve sloupci B (sloupec objednávky) jako komentář k buňce ve sloupci C (název). mimo, komentář pro Helen je 80.
Děkuji za vaší pomoc.
Tento komentář byl moderátorem webu minimalizován
Upřímný
Ahoj,

V případě chráněné tabulky, když otevřu sešit, buňka vrátí chybu #HODNOTA!

Jak můžeme tento problém vyřešit?
Tento komentář byl moderátorem webu minimalizován
Dobrý den, Franku,
Po vložení kódu byste měli svůj sešit uložit jako formát Excel Macro-Enabled Workbook, aby se kód neztratil.
Zkuste to prosím! Děkuji!
Tento komentář byl moderátorem webu minimalizován
Díky, je to užitečné a mám se na co zeptat Vrací se to s komentářem buňky, ale obrázek (vložený pomocí efektů výplně) se nezobrazuje
Prosím, pomozte mi z tohoto problému
Tento komentář byl moderátorem webu minimalizován
Shamim,
Omlouváme se za to, že neexistuje žádný přímý kód pro vyřešení vašeho problému, pokud má někdo řešení, prosím komentujte zde.
Tento komentář byl moderátorem webu minimalizován
Můj komentář je pro výchozí velikost krabice příliš velký. Existuje nějaký způsob, jak zvětšit velikost pole komentáře nebo případně zmenšit velikost písma?
Tento komentář byl moderátorem webu minimalizován
Pokud to ještě někdo potřebuje.


Funkce VlookupComment (LookVal jako varianta, FTable jako rozsah, Fcolumn as long, FType as long) as Variant

'Aktualizovat Extendoffice

Aplikace

Dim xRet As Variant 'může být chyba

Dim xCell As Range

xRet = Application.Match(LookVal, FTable.Columns(1), FType)

If IsError(xRet) Then

VlookupComment = "-"

Jiný

Nastavit xCell = FTable.Columns(FColumn).Cells(1)(xRet)

VlookupComment = xCell.Value

S aplikací Application.Caller

Pokud ne .Comment Is Nothing Then

.Komentovat.Smazat

End If

If Not xCell.Comment Is Nothing Then

.AddComment xCell.Comment.Text

.Comment.Shape.ScaleWidth 2, msoFalse, msoScaleFromTopLeft

.Comment.Shape.ScaleHeight 2.5, msoFalse, msoScaleFromTopLeft

End If

Konec s

End If

End Function
Tento komentář byl moderátorem webu minimalizován
Chci pouze Komentář jako hodnotu buňky pomocí funkce Vlookup...
Tento komentář byl moderátorem webu minimalizován
můžu to udělat hned napoprvé. ale poté, co se pokusím použít měnící se vzorec více buněk. Teď to nejde. i po zadání vlookupcomment se buňka stane prázdnou.
Tento komentář byl moderátorem webu minimalizován
Ahoj! Jsem tak rád, že jsem to našel, jde o to, že to skutečně funguje na poznámky a ne na komentáře. existuje způsob, jak pracovat na komentářích a ne na poznámkách? v poznámkách nemohu označit své spolupracovníky a nemohu ani odpovědět. Díky moc!
Tento komentář byl moderátorem webu minimalizován
To je úžasné. Ale při použití tohoto kódu zjistím, že soubor v Excelu 365 hodně padá. Při odstraňování automatického ukládání jsem zjistil, že je to trochu lepší. Ale pokud je v souboru více uživatelů, soubor bude neustále padat. Využívá tento kód hodně paměti nebo je to problém s kompatibilitou? myšlenky? dík
Tento komentář byl moderátorem webu minimalizován
Nefunguje pro mě. Dostanu #NAME? chyba při použití tohoto vzorce. Prosím pomozte.
Tento komentář byl moderátorem webu minimalizován
Dobrý den, Sajjade, vložil jste kód VBA z tohoto článku do svého sešitu? Zkontrolujte to. Nebo jakou verzi Excelu používáte? Děkujeme!
Tento komentář byl moderátorem webu minimalizován
Dobrý den, toto je velmi dobrá funkce, ale funguje pro poznámky, ne pro komentáře (takto je to alespoň přeloženo do mého rodného jazyka). Existuje nějaký způsob, jak to změnit z poznámek na komentáře? Existuje také způsob, jak zachovat formát buňky? (barva původní buňky atd.).
Tento komentář byl moderátorem webu minimalizován
měl jsem stejný problém. Mohu jen říci, že když jsem se pokusil přes vba zkopírovat komentáře a poznámky... kopírují se pouze poznámky, nikoli komentáře (ačkoli mají stejný význam, ale jinou funkčnost)... Poznámky se zdají být statické povahy , na rozdíl od komentářů, kde můžete stále "přispívat" k přidávání nového textu...Asi to je ten důvod....
Tento komentář byl moderátorem webu minimalizován
Ahoj fana,
Chcete-li extrahovat odpovídající záznamy s komentářem v Office 365, použijte níže uvedený kód:
Function VlookupComment(LookVal As Variant, FTable As Range, FColumn As Long, FType As Long) As Variant
'Updateby Extendoffice
    Application.Volatile
    Dim xRet As Variant 'could be an error
    Dim xCell As Range
    xRet = Application.Match(LookVal, FTable.Columns(1), FType)
    If IsError(xRet) Then
        VlookupComment = "Not Found"
    Else
        Set xCell = FTable.Columns(FColumn).Cells(1)(xRet)
        VlookupComment = xCell.Value
        With Application.Caller
            If Not .CommentThreaded Is Nothing Then
                .ClearComments
            End If
            If Not xCell.CommentThreaded Is Nothing Then
                .AddCommentThreaded xCell.CommentThreaded.Text
            End If
        End With
    End If
End Function


Po vložení kódu použijte tento vzorec: = vlookupcomment (H2, A2: C10,3, FALSE) stejně.

Zkuste to prosím, doufám, že vám to pomůže!
Tento komentář byl moderátorem webu minimalizován
txs hodně. velmi ceněný!
Zatím zde nejsou žádné komentáře
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění

Sociální sítě

Copyright © 2009 - www.extendoffice.com. | Všechna práva vyhrazena. Poháněno ExtendOffice. | |. | Sitemap
Microsoft a logo Office jsou ochranné známky nebo registrované ochranné známky společnosti Microsoft Corporation ve Spojených státech a / nebo jiných zemích.
Chráněno Sectigo SSL