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

Sut i wneud cell benodol yn orfodol cyn cau'r llyfr gwaith?

Pan fyddwch chi'n rhannu llyfr gwaith â defnyddwyr eraill ar gyfer cynnal arolwg sydd angen cofrestru enw go iawn, er enghraifft, mae angen i bob defnyddiwr sy'n destun ymchwiliad nodi ei enw yn B1. Ond mewn rhai adegau, efallai y bydd rhai defnyddwyr yn cau'r llyfr gwaith ar ôl ymchwilio heb nodi eu henwau. Yn yr erthygl hon, rwy'n cyflwyno VBA i wneud cell benodol yn orfodol cyn cau'r llyfr gwaith.

Gwneud cell orfodol mynd i mewn gyda VBA


swigen dde glas saeth Gwneud cell orfodol mynd i mewn gyda VBA

1. Galluogi'r llyfr gwaith sy'n cynnwys y gell orfodol, a'r wasg Alt + F11 allweddi i agor Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn y Prosiect cwarel, cliciwch ddwywaith Llyfr Gwaith hwn, a mynd i ddewis Llyfr Gwaith ac CynClose o'r rhestr adran dde, yna pastiwch y cod isod i'r sgript. Gweler y screenshot:

VBA: Gwneud cell yn orfodol

    If Cells(1, 2).Value = "" Then
        MsgBox "Cell B1 requires user input", vbInformation, "Kutools for Excel"
        Cancel = True
    End If

mandantory doc nodwch 1

3. Yna arbedwch y cod hwn a chau'r ffenestr popio hon. Nawr, os yw'r gell B1 yn wag pan fyddwch chi'n cau'r llyfr gwaith, bydd y dialog isod yn galw allan i'ch atgoffa i nodi rhywbeth yn B1. Gweler y screenshot:
mandantory doc nodwch 2

Tip: Gallwch chi newid cell B1 i gelloedd eraill rydych chi eu heisiau.


Yr Offer Cynhyrchedd Swyddfa Gorau

Mae Kutools for Excel yn Datrys y rhan fwyaf o'ch Problemau, ac yn Cynyddu Eich Cynhyrchedd 80%

  • Ailddefnyddio: Mewnosod yn gyflym fformwlâu cymhleth, siartiau ac unrhyw beth rydych chi wedi'i ddefnyddio o'r blaen; Amgryptio Celloedd gyda chyfrinair; Creu Rhestr Bostio ac anfon e-byst ...
  • Bar Fformiwla Gwych (golygu llinellau lluosog o destun a fformiwla yn hawdd); Cynllun Darllen (darllen a golygu nifer fawr o gelloedd yn hawdd); Gludo i'r Ystod Hidlo...
  • Uno Celloedd / Rhesi / Colofnau heb golli Data; Cynnwys Celloedd Hollt; Cyfuno Rhesi / Colofnau Dyblyg... Atal Celloedd Dyblyg; Cymharwch y Meysydd...
  • Dewiswch Dyblyg neu Unigryw Rhesi; Dewiswch Blank Rows (mae pob cell yn wag); Darganfyddiad Gwych a Darganfyddiad Niwlog mewn Llawer o Lyfrau Gwaith; Dewis ar Hap ...
  • Copi Union Celloedd Lluosog heb newid cyfeirnod fformiwla; Auto Creu Cyfeiriadau i Daflenni Lluosog; Mewnosod Bwledi, Blychau Gwirio a mwy ...
  • Testun Detholiad, Ychwanegu Testun, Tynnu yn ôl Swydd, Tynnwch y Gofod; Creu ac Argraffu Subtotals Paging; Trosi rhwng Cynnwys a Sylwadau Celloedd...
  • Hidlo Super (arbed a chymhwyso cynlluniau hidlo i ddalenni eraill); Trefnu Uwch yn ôl mis / wythnos / dydd, amlder a mwy; Hidlo Arbennig gan feiddgar, italig ...
  • Cyfuno Llyfrau Gwaith a Thaflenni Gwaith; Uno Tablau yn seiliedig ar golofnau allweddol; Rhannwch Ddata yn Daflenni Lluosog; Trosi Swp xls, xlsx a PDF...
  • Mwy na 300 o nodweddion pwerus. Yn cefnogi Swyddfa / Excel 2007-2019 a 365. Yn cefnogi pob iaith. Defnydd hawdd yn eich menter neu sefydliad. Nodweddion llawn treial am ddim 30 diwrnod. Gwarant arian yn ôl 60 diwrnod.
tab kte 201905

Mae Tab Office yn Dod â rhyngwyneb Tabbed i'r Swyddfa, a Gwneud Eich Gwaith yn Haws o lawer

  • Galluogi golygu a darllen tabbed yn Word, Excel, PowerPoint, Cyhoeddwr, Mynediad, Visio a Phrosiect.
  • Agor a chreu dogfennau lluosog mewn tabiau newydd o'r un ffenestr, yn hytrach nag mewn ffenestri newydd.
  • Yn cynyddu eich cynhyrchiant 50%, ac yn lleihau cannoedd o gliciau llygoden i chi bob dydd!
gwaelod officetab
sylwadau (21)
Dim sgôr eto. Byddwch y cyntaf i sgorio!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
sut mae gwneud colofn D16-D300 yn orfodol os oes gan golofn B16-300 werthoedd? Defnyddiais y cod isod ar gyfer rhes 16 a rhoi cynnig ar amrywiadau ond nid yw'n gweithio. gwerthfawrogir unrhyw help yn fawr! 'busnes ni fel maes gorfodol - angen trwsio os nad oes un yno a ffenestr yn ymddangos Is Lyfr Gwaith Preifat_BeforeClose(Canslo Fel Boolean) ' Cam 1: Gwiriwch i weld a yw Cell A1 yn wag Os Taflenni ("Traciwr Gadael Sensitif"). ("B16").Value" "A Sheets("Traciwr Gadael Sensitif").Range("D16").Value="" Yna 'Cam 2: Gwag: canslo'r Cau a dweud wrth y defnyddiwr Diddymu = Gwir MsgBox " Methu angen maes cau" 'Cam 3: Ddim yn wag; Cadw a Chau Arall ActiveWorkbook.Close SaveChanges:=Diwedd Gwir Os Diwedd Is
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, mae'n ddrwg gennyf ateb mor hwyr. Dyma'r cod macro y gallech fod ei angen. Os yw'n gweithio, rhowch wybod i mi. Diolch!

Os Cais.WorksheetFunction.CountA(Range("B16:B300")) > 0 Yna

Os Cais.WorksheetFunction.CountA(Rrange("D16:D300")) <> Ystod ("D16:D300").Cyfrif Yna

MsgBox "Mae Cell D16:D300 angen mewnbwn defnyddiwr", vbInformation, "Kutools for Excel"

Diddymu = Gwir

Gorffennwch Os

Gorffennwch Os
Lleihawyd y sylw hwn gan y safonwr ar y wefan
sut mae gwneud colofn Q7-Q500 yn orfodol os oes gan golofn B7-B500 werthoedd

Dydw i ddim eisiau arbed flle cyn cwblhau ffeilio gorfodol.

ee.
Os byddaf yn rhoi unrhyw werth / Testun yng ngholofn D7 i D500 yna dylai Colofn C7 i Q500 fod yn Orfodol. (ffenestr Naid i fyny)
Os na roddais unrhyw werth/testun yng ngholofn D7 i D500 yna dylai Q7 i Q500 fod yn wag
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, ceisiwch uchod VBA a newid y cyfeiriad at eich angen eich hun.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A wnaethoch chi erioed ddirwyo ateb i hyn?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae'n ddrwg gennyf, pa gwestiwn ydych chi'n ei olygu?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, diolch am y fformiwla hon, mae'n gweithio!

Fodd bynnag, nawr rwyf wedi creu templed lle mae sawl cell yn orfodol i'w llenwi. Ond ar ôl creu'r templed a mynd i mewn i'r macro, ni allaf ei gau, oherwydd mae'n rhaid i mi lenwi'r celloedd :) Felly, ni allaf anfon templed ... (lle mae'n rhaid i'r celloedd gorfodol fod yn wag o hyd)


Allwch chi fy helpu i?

Diolch!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Unrhyw ddiweddariad ar hyn?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae gen i ddiddordeb yn hwn hefyd, diolch!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Yr un mater sydd gennyf. A oes ffordd i wneud cell yn orfodol ond yn wag ar gyfer templed?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo bawb, darganfyddais mai'r ateb oedd oedi'r macro yn y sgrin alt + f11. Yna gellir ei gadw a bydd yn ailgychwyn pan fydd yn agor nesaf. I wneud hyn pwyswch alt + f11 ac yna yn y rhes o eiconau uwchben y ffenestr (yr un un â lle mae'r eicon disg ffeil glas bach) fe welwch eiconau Chwarae, Saib, Stopio mewn gwyrdd a glas (dylai fod o dan y Debug a Run opsiynau). Cliciwch y botwm saib canol yna gallwch arbed.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo bawb, darganfyddais mai'r ateb oedd oedi'r macro yn y sgrin alt + f11. Yna gellir ei gadw a bydd yn ailgychwyn pan fydd yn agor nesaf. I wneud hyn pwyswch alt + f11 ac yna yn y rhes o eiconau uwchben y ffenestr (yr un un â lle mae'r eicon disg ffeil glas bach) fe welwch eiconau Chwarae, Saib, Stopio mewn gwyrdd a glas (dylai fod o dan y Debug a Run opsiynau). Cliciwch y botwm saib canol yna gallwch arbed.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, rhowch gynnig ar y cod isod, a fydd yn gorfodi defnyddwyr eraill i nodi gwerth yn ystod A7: M7 cyn cau'r llyfr gwaith, ond gadewch i chi'ch hun guro'r llyfr gwaith heb ei lenwi.
Sylwch: newidiwch y blodyn haul i'ch enw defnyddiwr eich hun. I ddod o hyd i'ch enw defnyddiwr a'i olygu, cliciwch Ffeil > Opsiynau > Cyffredinol > Enw Defnyddiwr.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim rg As Range
Dim rgs As Range
Set rgs = Application.Range("A7:M7")
If Application.UserName = "sunflower" Then
Exit Sub
End If
    For Each rg In rgs
        If rg.Value = "" Then
        MsgBox "Range A7:M7 requires user input", vbInformation, "Kutools for Excel"
        Cancel = True
        Exit Sub
       End If
    Next
End Sub

Gobeithio y gall y cod hwn eich helpu.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A oes unrhyw ffordd y gallaf gael data gofynnol cell f4 a F5 cyn cau neu arbed?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Newidiwch B1 i F4 a F5 yn y blwch testun i atgoffa defnyddwyr.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwyf am wneud rhesi C2 i C7 yn orfodol a C13 i C19 yn orfodol?

Unrhyw help?

Mae 2 set o ystodau yma ond o dan yr un golofn.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwyf am wneud y marciau ticio yn orfodol ar y ddalen
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A oes ffordd i wneud mewnbwn cell yn orfodol cyn y gellir defnyddio botwm gorchymyn Active X? Mae gen i drefniant botwm gorchymyn i gyflwyno ffurflen trwy e-bost ond rydw i eisiau gwneud rhai celloedd yn orfodol cyn i'r botwm gyflwyno'r e-bost.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, Craig, mae'n ddrwg gennyf na ellir datrys y broblem hon yma, efallai y gall eraill eich helpu.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Cwestiwn, gweithiodd y cod, ond sut y gallwch ddewis ystod o A7:M7 hyd at y rhes olaf?

a phryd bynnag y bydd y defnyddiwr yn cadw neu'n cau'r llyfr gwaith, mae'n rhaid llenwi'r maes gorfodol
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, Lester, dyma god a addaswyd gennym a all eich helpu, newid yr ystod A2:F2 i'r ystod ag sydd ei angen arnoch.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'UpdatebyExtend20220916
Dim xRgCount As Integer

Dim xURg As Range

Dim xStr As String

Dim xWSh As Worksheet

Dim xRg, xRg1, xRg2, xRg3 As Range

xStr = "A2:F2"

 

Set xWSh = Application.ActiveSheet

Set xRg = xWSh.Range(xStr)

Set xURg = xWSh.UsedRange

Set xRg1 = xWSh.Cells.Item(xRg.Row + xRg.Rows.Count, 1)

Set xRg2 = xURg.Item(xURg.Count)

Set xRg3 = xWSh.Range(xRg1, xRg2)

Debug.Print xRg3.Address

If (xURg.Row + xURg.Rows.Count - 1) > (xRg.Row + xRg.Rows.Count - 1) Then

   If Application.WorksheetFunction.CountA(xRg3) <> xRg3.Count Then

    MsgBox "There are blank cells under range A2:F2", vbInformation, "Kutools for Excel"

Cancel = True

   End If

End If

End Sub


Nid oes unrhyw sylwadau wedi'u postio yma eto
Gadewch eich sylwadau
Postio fel Gwestai
×
Graddiwch y swydd hon:
0   Cymeriadau
Lleoliadau a Awgrymir