Hur inaktiverar du redigering i textrutan för att förhindra användarens inmatning i Excel?
Den här artikeln talar om att inaktivera redigering i en textruta (ActiveX Control) eller flera textrutor (ActiveX Control) för att förhindra att användare matar in i Excel.
Inaktivera redigering i en textruta genom att ändra dess egenskaper
Inaktivera redigering i flera textrutor med VBA-kod
Inaktivera redigering i en textruta genom att ändra dess egenskaper
Detta avsnitt visar hur du ändrar egenskaperna för en textruta för att inaktivera redigering av denna textruta. Gör så här.
1. Aktivera designläget genom att klicka på Utvecklare > Designläge. Se skärmdump:
2. Högerklicka på textrutan och klicka Våra Bostäder från snabbmenyn som visas nedan.
3. I öppningen Våra Bostäder dialogrutan väljer du Falsk i Aktiverat och stäng sedan dialogrutan Egenskaper. Se skärmdump:
Nu är den markerade textrutan grå och kan inte redigeras.
Inaktivera redigering i flera textrutor med VBA-kod
Om du vill inaktivera redigering i flera textrutor i ett kalkylblad, använd VBA-koden nedan.
1. I kalkylbladet innehåller flera kryssrutor som du behöver för att inaktivera redigering, klicka Utvecklare > Insert > Kryssruta (ActiveX-kontroll) för att infoga en kryssruta i kalkylbladet. Se skärmdump:
2. Högerklicka på kryssrutan och välj Visa kod från snabbmenyn. Se skärmdump:
3. I Microsoft Visual Basic för applikationer fönster, byt ut den ursprungliga koden med nedanstående VBA-kod.
VBA-kod: Inaktivera redigering i flera textrutor
Private Sub CheckBox1_Click()
Dim xTextBox As OLEObject
Dim xFlag As Boolean
Dim I As Long
Dim xArr
xArr = Array("TextBox1", "TextBox2", "TextBox3")
xFlag = True
If Me.CheckBox1 Then xFlag = False
For Each xTextBox In ActiveSheet.OLEObjects
If TypeName(xTextBox.Object) = "TextBox" Then
For I = 0 To UBound(xArr)
If xTextBox.Name = xArr(I) Then
xTextBox.Enabled = xFlag
End If
Next
End If
Next
End Sub
Anmärkningar:
1. I koden, Kontrollbox1 är namnet på din infogade kryssruta. Och TextBox1, TextBox2och TextBox3 är textrutorna du kommer att inaktivera redigering i kalkylbladet. Ändra dem efter behov.
2. För att inaktivera redigering för fler textrutor, lägg till textrutans namn som omfattar dubbla citat i raden xArr = Array ("TextBox1", "TextBox2", "TextBox3").
4. Spara och stäng sedan koden, stäng av designläget. Om du markerar kryssrutan kan alla angivna textrutor inte redigeras i kalkylbladet. Se skärmdump:
Anmärkningar: Om du avmarkerar kryssrutan kan textrutorna redigeras igen.
Relaterade artiklar:
- Hur markerar jag text i en textruta automatiskt när den väljs i Excel?
- Hur fyller jag i en textruta automatiskt när du skriver i Excel?
- Hur rensar man innehållet i textrutan när man klickar i Excel?
- Hur sammanfoga texter från flera celler till en textruta i Excel?
- Hur formaterar jag en textruta i procent i Excel?
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!