Note: The other languages of the website are Google-translated. Back to English

Hogyan lehet beilleszteni a dátumbélyegzőt egy cellába, ha bejelöli az Excel jelölőnégyzetét?

Normál esetben a dátumbélyegzőt az Excel gyorsbillentyűivel írja be. Mit szólna hozzá, ha a dátumbélyegzőt egy cellába helyezi be az Excel jelölőnégyzetével? A jelölőnégyzet bejelölésekor az időbélyegző automatikusan beilleszkedik egy megadott cellába. Ez a cikk segít megoldani.

Helyezze be a dátumbélyegzőt egy cellába, ha be van jelölve a VBA kóddal ellátott jelölőnégyzet


Helyezze be a dátumbélyegzőt egy cellába, ha be van jelölve a VBA kóddal ellátott jelölőnégyzet

Ez a szakasz bemutat egy VBA szkriptet, amely segít automatikusan beilleszteni egy dátumbélyegzőt egy cellába, ha bejelöli az Excel jelölőnégyzetét. Kérjük, tegye a következőket.

1. Miután bejelölt egy jelölőnégyzetet, nyomja meg a gombot más + F11 gombok egyszerre a Microsoft Visual Basic for Applications ablak.

2. Ban,-ben Microsoft Visual Basic for Applications ablakban kattintson betétlap > Modulok. Ezután másolja és illessze be az alábbi VBA kódot a Modul ablakba.

VBA kód: Helyezze be a dátumbélyegzőt egy cellába, ha be van jelölve egy jelölőnégyzet

Sub CheckBox_Date_Stamp()
Dim xChk As CheckBox
Set xChk = ActiveSheet.CheckBoxes(Application.Caller)
With xChk.TopLeftCell.Offset(, 1)
    If xChk.Value = xlOff Then
        .Value = ""
    Else
       .Value = Date
    End If
End With
End Sub

3. nyomja meg más + Q gombok a Microsoft Visual Basic for Applications ablak.

4. Kattintson a jobb gombbal a jelölőnégyzetre, és válassza a lehetőséget Rendeljen Micro-t a jobb egérgombbal kattintva. Lásd a képernyőképet:

5. Ban,-ben Hozzárendelje a Makrót párbeszédpanelen válassza ki CheckBox_Date_Stamp a Makró neve jelölőnégyzetet, majd kattintson a gombra OK gomb. Lásd a képernyőképet:

A jelölőnégyzet bejelölésekor a dátumbélyegző automatikusan beilleszkedik a szomszédos cellába.


Kapcsolódó cikkek:


A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2021 és 365 verziókat. Minden nyelvet támogat. Könnyű üzembe helyezés vállalatában vagy szervezetében. Teljes funkciók 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
officetab alja
A megjegyzések rendezése szerint
Hozzászólások (22)
Még nincs értékelés. Legyen Ön az első, aki értékel!
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm, ez nagyon hasznos volt, szeretném megjegyezni, hogy hasznosabbnak találom a dátumbélyegzőt a jelölőnégyzet bal oldalán. ehhez módosítsa az eltolást (, -1) értékre.
A weboldal moderátora ezt a megjegyzést minimalizálta
Meg lehet ezt csinálni a dátummal ÉS az idővel? Köszi az infót mindenesetre!
A weboldal moderátora ezt a megjegyzést minimalizálta
Sub CheckBox_Date_Stamp() Dim xChk As CheckBox Set xChk = ActiveSheet.CheckBoxes(Application.Caller) With xChk.TopLeftCell.Offset(, 1) Ha xChk.Value = xlOff Akkor .Érték = "" Else .Value = dátum Idő vége Ha vége a végével
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia,
Kérjük, alkalmazza az alábbi VBA-kódot a dátum és az idő hozzáadásához.

Sub CheckBox_Date_Stamp()
Dim xChk As CheckBox
Set xChk = ActiveSheet.CheckBoxes(Application.Caller)
Az xChk.TopLeftCell.Offset(, 1) paraméterrel
Ha xChk.Value = xlOff Akkor
.Value = ""
Más
.Érték = Most()
Ha véget
Vége
End Sub
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Kipróbáltam ezt a képletet, és csak A1 és B1 esetén működött, amikor alkalmaztam a makrót az A1 jelölőnégyzetére. Amikor azonban alkalmaztam a makrót a jelölőnégyzetre az A2-ben, nem történt semmi a B2-ben. Illetve hogyan változna meg a képlet, ha ellenőrzőlistához szeretném használni? Ha az A oszlop volt a jelölőnégyzet, és a C oszlop volt a kitöltési dátum.
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia:) az A1-ben lévő jelölőnégyzetet tartalmazó cellát átmásolhatod az oszlop többi részébe. vagy külön-külön rendelje hozzá a makrót az egyes jelölőnégyzetekhez
A weboldal moderátora ezt a megjegyzést minimalizálta
Good Day,
Kérjük, mindegyik jelölőnégyzethez külön-külön rendelje hozzá a makrót.
A weboldal moderátora ezt a megjegyzést minimalizálta
Pontosan kimásoltam és beillesztettem a VBA kódot, de a táblázatomon a dátum a fenti cellában és a jelölőnégyzet oszlopától jobbra jelenik meg, nem pedig a közvetlenül jobb oldali cellában. ?
A weboldal moderátora ezt a megjegyzést minimalizálta
Nekem is pontosan ugyanez a problémám. "SEGÍTSÉG! SEGÍTSÉGRE van szükségem valakinek! Nem akárkinek SEGÍTSÉG! Tudod, hogy valakinek SEGÍTSÉGRE van szükségem!
A weboldal moderátora ezt a megjegyzést minimalizálta
Jó napot,
A kód jól működik az én esetemben. A jelölőnégyzet bejelölése után a dátum közvetlenül a jobb oldali cellában jelenik meg. Adnál képernyőképet az esetedről. És melyik Office-verziót használja. Köszönöm.
A weboldal moderátora ezt a megjegyzést minimalizálta
Ugyanez a problémám volt a kívánt cella feletti cellában megjelenő dátum- és időbélyeggel (Excel 2007 használatával). Továbbmentem, és megváltoztattam az "eltolás" képletet úgy, hogy az egy cella fölött ÉS egy cellával lefelé haladjon, és most a bélyeg ott jelenik meg, ahol akarom: With xChk.TopLeftCell.Offset(1, 1)
Frissítek egy munkalapot, amelyet valaki más hozott létre, de nem hozta létre a jelölőnégyzeteket, de lehet, hogy ez összefügg azzal, hogy a cellán belül hol van a jelölőnégyzet. Más eredményeket kaptam, amikor a jelölőnégyzetet a cella aljával egy vonalba helyeztem.

Remélem, hogy segít!
A weboldal moderátora ezt a megjegyzést minimalizálta
Ezt tettem a probléma megoldására

Sub CheckBox_Date_Stamp()
Dim xChk As CheckBox
Set xChk = ActiveSheet.CheckBoxes(Application.Caller)
Az xChk.TopLeftCell.Offset(1, 1) paraméterrel
Ha xChk.Value = xlOff Akkor
.Value = ""
Más
.Érték = Most()
Ha véget
Vége
End Sub
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia! Köszönöm a kódot. Tökéletesen működik az eltoláson lévő lil finomítással. Azonban egy olyan lapon dolgoztam, amelyen sok sok sok sor van (~500+ sor), amely rengeteg jelölőnégyzetet tartalmaz, és a fájl mérete jelentősen megnőtt. Van valami mód a méret csökkentésére? Van valami alternatív módja ennek?

Köszönjük!
A weboldal moderátora ezt a megjegyzést minimalizálta
na jó
Ha sok jelölőnégyzet van a sorban, és egyszerre szeretné végrehajtani az összes jelölőnégyzetet, az alábbi VBA-kód segíthet.
Kérjük, másolja be a kódokat egy Modulkód ablakba, lépjen vissza a munkalapra, és hozzon létre egy gombot (például egy gombot (Űrlapvezérlő)), rendelje hozzá a SetAllChkChange() makrót a gombhoz, majd kattintson a gombra a kód futtatásához.

Mostanra a munkalap soraiban lévő összes jelölőnégyzet aktiválva van. Bármelyik bejelölésével dátumbélyeget szúrhat be a szomszédos cellába.

Sub SetAllChkChange()
Dim xChks
Dim xChk As CheckBox
Dim xI As Long
On Error Resume Next
Az xArrChk törlése
Állítsa be az xChks = ActiveSheet.CheckBoxes
ReDim Preserve xArrChk(1 - xChks.count)
xI = 1
Minden xChk In xChks
xChk.Select
Selection.OnAction = "ObjChkChange"
Következő
End Sub


Sub ObjChkChange()
Dim xChk As CheckBox
Set xChk = ActiveSheet.CheckBoxes(Application.Caller)
Az xChk.TopLeftCell.Offset(, 1) paraméterrel
Ha xChk.Value = xlOff Akkor
.Value = ""
Más
.Érték = dátum
Ha véget
Vége
End Sub
A weboldal moderátora ezt a megjegyzést minimalizálta
hogyan tudom elérni, hogy a dátum bélyegzője megjelenjen a jelölőnégyzet alatt?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia! Úgy tűnik, nem találom a módját, hogy a dátumbélyeg hol legyen a jelölőnégyzet oldalán. Megpróbáltam megváltoztatni az eltolás értékét 0, 1 és -1-ről. tudtok ebben segíteni? köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia! Feltéve, hogy a jelölőnégyzet A2-ben van, és a jelölőnégyzet jobb oldalán szeretné kiadni a dátumbélyeget (jelen esetben ez B2), kérjük, módosítsa az Offset értéket Offset(1, 1) értékre.
A weboldal moderátora ezt a megjegyzést minimalizálta
A VBA-t használtam a jelölőnégyzet időbélyegzéséhez, de az első két cella nem működik megfelelően. Az első jelölőnégyzetem az A2-ben van, amikor bejelölöm, az idő a B1-ben van feladva. Hogyan tudom ezt kijavítani?
A weboldal moderátora ezt a megjegyzést minimalizálta
Hi Steve,
Kérjük, cserélje ki a kód negyedik sorát a With xChk.TopLeftCell.Offset(1, 1) szövegre.
A weboldal moderátora ezt a megjegyzést minimalizálta
Nagyon szépen köszönjük!! Ragyogó! Köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia! Hogyan tudom a kódot hurkolni, hogy az összes jelölőnégyzet szerepeljen az oszlopban?
A weboldal moderátora ezt a megjegyzést minimalizálta
Jó napot,
Ha sok jelölőnégyzet van a sorban, és egyszerre szeretne az összes jelölőnégyzetet kezelni, az alábbi VBA-kód segíthet.
Kérjük, másolja be az alábbi kódokat egy Modul kód ablakba, menjen vissza a munkalaphoz és hozzon létre egy gombot (például egy gombot (Űrlapvezérlő)), rendelje hozzá a makrót SetAllChkChange() a gombra, majd kattintson a gombra a kód futtatásához.

Mostanra a munkalap soraiban lévő összes jelölőnégyzet aktiválva van. Bármelyik bejelölésével dátumbélyeget szúrhat be a szomszédos cellába.

Sub SetAllChkChange()
'Frissítette Extendoffice 20211130
Dim xChks
Dim xChk As CheckBox
On Error Resume Next
Állítsa be az xChks = ActiveSheet.CheckBoxes
Minden xChk In xChks
xChk.Select
Selection.OnAction = "ObjChkChange"
Következő
End Sub

Sub ObjChkChange()
Dim xChk As CheckBox
Set xChk = ActiveSheet.CheckBoxes(Application.Caller)
Az xChk.TopLeftCell.Offset(, 1) paraméterrel
Ha xChk.Value = xlOff Akkor
.Value = ""
Más
.Érték = dátum
Ha véget
Vége
End Sub
Még senki sem írt megjegyzést
Hagyja meg észrevételeit
Feladás vendégként
×
Értékeld ezt a bejegyzést:
0   Karakterek
Javasolt helyek

Kövess minket

Copyright © 2009 - www.extendoffice.com. | Minden jog fenntartva. Powered by ExtendOffice. | Oldaltérkép
A Microsoft és az Office logó a Microsoft Corporation védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és / vagy más országokban.
Sectigo SSL védi