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

Sut i greu gwymplen gyda nifer o ddetholiadau neu werthoedd yn Excel?

Yn ddiofyn, dim ond un eitem y gallwch ei dewis mewn cwymprestr dilysu data yn Excel. Sut allwch chi wneud dewisiadau lluosog yn y gwymplen fel y dangosir y gif isod? Gall y dulliau yn yr erthygl hon eich helpu i ddatrys y broblem.

Creu rhestr ostwng gyda nifer o ddetholiadau gyda chod VBA
Yn hawdd creu rhestr ostwng gyda nifer o ddetholiadau gydag offeryn anhygoel

Mwy o diwtorial ar gyfer y gwymplen ...


Creu rhestr ostwng gyda nifer o ddetholiadau gyda chod VBA

Mae'r adran hon yn darparu dau god VBA i'ch helpu i wneud dewisiadau lluosog mewn rhestrau cwympo mewn taflen waith. Gall y ddau god VBA gyflawni:

Cod VBA 1: Caniatáu dewis lluosog mewn cwymprestr heb ddyblygiadau
Cod VBA 2: Caniatáu dewis lluosog mewn cwymprestr heb ddyblygiadau (dilëwch eitemau presennol trwy ei ddewis eto)

Gallwch chi gymhwyso un o'r codau VBA canlynol i wneud dewisiadau lluosog mewn rhestr ostwng mewn taflen waith yn Excel. Gwnewch fel a ganlyn.

1. Mae agor y daflen waith yn cynnwys y cwymplenni dilysu data yr ydych am wneud dewisiadau lluosog ohonynt. De-gliciwch ar y tab taflen a dewiswch Gweld y Cod o'r ddewislen cyd-destun.

2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, copïwch y cod VBA isod i mewn i'r ffenestr cod. Gweler y screenshot:

Cod VBA 1: Caniatáu dewis lluosog mewn cwymprestr heb ddyblygiadau

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2019/11/13
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
    If xRng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Not Application.Intersect(Target, xRng) Is Nothing Then
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or _
                   InStr(1, xValue1, ", " & xValue2) Or _
                   InStr(1, xValue1, xValue2 & ",") Then
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & ", " & xValue2
                End If
            End If
        End If
    End If
    Application.EnableEvents = True
End Sub

3. Gwasgwch y Alt + Q allweddi i gau'r Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

Nawr gallwch ddewis eitemau lluosog o'r gwymplen yn y daflen waith gyfredol.

Gan dybio eich bod wedi dewis eitem yn ddamweiniol a bod angen ei thynnu heb glirio'r gell gyfan a dechrau drosodd. Gall y cod VBA 2 canlynol wneud ffafr i chi.

Cod VBA 2: Caniatáu dewis lluosog mewn cwymprestr heb ddyblygiadau (dilëwch eitemau presennol trwy ei ddewis eto)

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2019/11/13
'Updated by Ken Gardner 2022/07/11
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
Dim semiColonCnt As Integer
If Target.Count > 1 Then Exit Sub
On Error Resume Next
Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
If xRng Is Nothing Then Exit Sub
Application.EnableEvents = False
'If Not Application.Intersect(Target, xRng) Is Nothing Then
If Application.Intersect(Target, xRng) Then
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or xValue1 = xValue2 & ";" Or xValue1 = xValue2 & "; " Then ' leave the value if only one in list
xValue1 = Replace(xValue1, "; ", "")
xValue1 = Replace(xValue1, ";", "")
Target.Value = xValue1
ElseIf InStr(1, xValue1, "; " & xValue2) Then
xValue1 = Replace(xValue1, xValue2, "") ' removes existing value from the list on repeat selection
Target.Value = xValue1
ElseIf InStr(1, xValue1, xValue2 & ";") Then
xValue1 = Replace(xValue1, xValue2, "")
Target.Value = xValue1
Else
Target.Value = xValue1 & "; " & xValue2
End If
Target.Value = Replace(Target.Value, ";;", ";")
Target.Value = Replace(Target.Value, "; ;", ";")
If InStr(1, Target.Value, "; ") = 1 Then ' check for ; as first character and remove it
Target.Value = Replace(Target.Value, "; ", "", 1, 1)
End If
If InStr(1, Target.Value, ";") = 1 Then
Target.Value = Replace(Target.Value, ";", "", 1, 1)
End If
semiColonCnt = 0
For i = 1 To Len(Target.Value)
If InStr(i, Target.Value, ";") Then
semiColonCnt = semiColonCnt + 1
End If
Next i
If semiColonCnt = 1 Then ' remove ; if last character
Target.Value = Replace(Target.Value, "; ", "")
Target.Value = Replace(Target.Value, ";", "")
End If
End If
End If
End If
Application.EnableEvents = True
End Sub

Nodiadau:

1). Nid yw gwerthoedd dyblyg yn caniatáu yn y gwymplen.
2). Darparwyd y cod VBA 2 uchod gan ein defnyddiwr brwdfrydig Ken Gardner ar 2022/07/11.
3). Cadwch y llyfr gwaith fel Llyfr Gwaith Macro-alluogedig Excel er mwyn cadw'r cod i weithio yn y dyfodol.
4). Ar ôl ychwanegu'r cod VBA 2, gallwch gael gwared ar eitem sy'n bodoli eisoes trwy ei ddewis eto yn y gwymplen. Gweler y gif isod:


Yn hawdd creu rhestr ostwng gyda nifer o ddetholiadau gydag offeryn anhygoel

Yma rydym yn argymell yn fawr y Rhestr Gollwng Aml-ddewis nodwedd o Kutools ar gyfer Excel i chi. Gyda'r nodwedd hon, gallwch chi ddewis sawl eitem yn hawdd o'r gwymplen mewn ystod benodol, taflen waith gyfredol, llyfr gwaith cyfredol neu'r holl lyfrau gwaith a agorwyd yn ôl yr angen.

Cyn gwneud cais Kutools ar gyfer Excel, os gwelwch yn dda ei lawrlwytho a'i osod yn gyntaf.

1. Cliciwch Kutools > Rhestr Gollwng > Rhestr Gollwng Aml-ddewis > Gosodiadau. Gweler y screenshot:

2. Yn y Gosodiadau Rhestr Gostwng Aml-ddewis blwch deialog, ffurfweddwch fel a ganlyn.

  • 2.1) Nodwch y cwmpas cymhwyso yn y Gwnewch gais i adran. Yn yr achos hwn, dewisaf Taflen waith gyfredol oddi wrth y Cwmpas Penodedig rhestr ostwng;
  • 2.2) Yn y Cyfeiriad Testun adran, dewiswch gyfeiriad testun yn seiliedig ar eich anghenion;
  • 2.3) Yn y gwahanydd blwch, nodwch amffinydd y byddwch chi'n ei ddefnyddio i wahanu'r gwerthoedd lluosog;
  • 2.4) Gwiriwch y Peidiwch ag ychwanegu dyblygu blwch yn y Dewisiadau adran os nad ydych am wneud dyblygu mewn celloedd gwymplen;
  • 2.5) Cliciwch y OK botwm. Gweler y screenshot:

3. Cliciwch Kutools > Rhestr Gollwng > Rhestr Gollwng Aml-ddewis i alluogi'r nodwedd.

Nawr gallwch ddewis nifer o eitemau o'r gwymplen yn y daflen waith gyfredol neu unrhyw gwmpas rydych chi wedi'i nodi yng ngham 2.

  Os ydych chi am gael treial am ddim (30 diwrnod) o'r cyfleustodau hwn, cliciwch i'w lawrlwytho, ac yna ewch i gymhwyso'r llawdriniaeth yn ôl y camau uchod.


Erthyglau cysylltiedig:

Yn awtomataidd wrth deipio rhestr ostwng Excel
Os oes gennych chi gwymplen dilysu data gyda gwerthoedd mawr, mae angen i chi sgrolio i lawr yn y rhestr dim ond er mwyn dod o hyd i'r un iawn, neu deipio'r gair cyfan yn y blwch rhestr yn uniongyrchol. Os oes dull ar gyfer caniatáu i gwblhau auto wrth deipio'r llythyren gyntaf yn y gwymplen, bydd popeth yn dod yn haws. Mae'r tiwtorial hwn yn darparu'r dull i ddatrys y broblem.

Creu rhestr ostwng o lyfr gwaith arall yn Excel
Mae'n eithaf hawdd creu gwymplen dilysu data ymhlith taflenni gwaith mewn llyfr gwaith. Ond os yw'r data rhestr sydd ei angen arnoch ar gyfer dilysu'r data yn lleoli mewn llyfr gwaith arall, beth fyddech chi'n ei wneud? Yn y tiwtorial hwn, byddwch yn dysgu sut i greu rhestr gollwng o lyfr gwaith arall yn Excel yn fanwl.

Creu rhestr ostwng y gellir ei chwilio yn Excel
Ar gyfer rhestr ostwng sydd â nifer o werthoedd, nid yw dod o hyd i un iawn yn waith hawdd. Yn flaenorol rydym wedi cyflwyno dull o gwblhau rhestr ostwng yn awtomatig wrth nodi'r llythyr cyntaf yn y gwymplen. Heblaw am y swyddogaeth awtocomplete, gallwch hefyd wneud y rhestr ostwng yn chwiliadwy am wella'r effeithlonrwydd gweithio wrth ddod o hyd i werthoedd cywir yn y gwymplen. Ar gyfer chwilio rhestr ostwng, rhowch gynnig ar y dull yn y tiwtorial hwn.

Auto poblogi celloedd eraill wrth ddewis gwerthoedd yn rhestr ostwng Excel
Gadewch i ni ddweud eich bod wedi creu rhestr ostwng yn seiliedig ar y gwerthoedd yn ystod celloedd B8: B14. Pan ddewiswch unrhyw werth yn y gwymplen, rydych chi am i'r gwerthoedd cyfatebol yn ystod celloedd C8: C14 gael eu poblogi'n awtomatig mewn cell ddethol. Ar gyfer datrys y broblem, bydd y dulliau yn y tiwtorial hwn yn ffafrio chi.

Mwy o diwtorial ar gyfer y gwymplen ...


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 (42)
Dim sgôr eto. Byddwch y cyntaf i sgorio!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, Diolch am yr ateb a'r cod. Ond y cam nesaf yw sut i sicrhau nad yw'r defnyddiwr yn dewis gwerthoedd "dyblyg" o'r gwymplen. Ee Os oes 4 eitem yn y rhestr - oren, afal, banana, eirin gwlanog ac os yw'r defnyddiwr eisoes wedi dewis "oren", yna ni ddylai excel ganiatáu i'r defnyddiwr ddewis "oren" NEU dylid tynnu'r opsiwn hwnnw o weddill y y rhestr. A allwch chi gyhoeddi'r cod i gyflawni'r nodwedd hon. Diolch. Yezdi
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Yezdi, Diolch am eich sylw. Diweddarwyd y cod ac nid oes unrhyw werthoedd dyblyg yn caniatáu yn y gwymplen nawr. Diolch. Heulwen
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae'n wych bod hyn yn caniatáu detholiadau lluosog ond fel y dywedodd @Yezdi, rwy'n gweld y bydd yn ychwanegu un neu sawl copi dyblyg hyd yn oed os na fyddaf yn eu dewis. Felly, ar hyn o bryd, mae hwn yn ateb 80% ... un tweak i ffwrdd oddi wrth berffaith. Nid wyf yn godiwr VB neu byddwn yn cynnig yr ateb.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Gallwch newid y cod yn y llinellau canlynol i atal y dyblygiadau: Os yw xValue2" "Yna Target.Value = xValue1 &", " & xValue2 End If To: If xValue2" "" Yna Os CheckIfAlreadyAdded(xValue1, xValue2) = Gau Yna Targed .Gwerth = xGwerth1 &", " & xValue2 Arall Target.Value = xGwerth1 Diwedd Os Diwedd Os Ac yna ychwanegwch y ffwythiant canlynol: Swyddogaeth Breifat CheckIfAlreadyAdded(ByVal sText Fel Llinyn, sNewValue As String) Fel Boole CheckIfAlreadyAdded =(Gau) Dim WrdArray Llinyn WrdArray() = Hollti(sText, ",") Ar gyfer i = LBound(WrdArray) I UBound(WrdArray) If Trim(WrdArray(i)) = Trimio(sNewValue) Yna CheckIfAlreadyAdded = Gwir Nesaf i Diwedd Swyddogaeth -- Mae'n debyg ffyrdd gwell o'i godio ond mae'n gweithio am y tro.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Newydd sylweddoli na wnes i adael y ddolen yn y swyddogaeth newydd os yw'r cyflwr wedi'i osod felly nid oes rhaid i ni wirio cofnodion eraill.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo. Diolch am y cod a'r ychwanegiad i gyfyngu ar ddyblygiadau. Un cais arall – pa ychwanegiad/newid fyddai’n rhaid ei wneud er mwyn caniatáu dewis lluosog mewn un neu ddwy golofn benodol yn unig? Mae'r côd yma yn ail-ychwanegu llinellau testun i'r hyn ddylai fod yn gelloedd 'plaen' os af i gywiro teipio, neu wneud newid neu ychwanegiad i'r testun yn y gell, yn hytrach na dim ond ymddwyn yn 'arferol' a derbyn y newid (heb ail-ychwanegu'r testun cyfan eto). Er enghraifft, mae colofn A yn golofn 'blaen'. Rwy'n ysgrifennu brawddeg "Beth yw'r tair eitem rydych chi eu heisiau fwyaf?" Colofn 'rhestr' yw Colofn B lle rwyf am allu dewis un gwerth unigol yn unig (yn yr achos hwn, gadewch i ni ddweud enw plentyn). Mae Colofn C yn golofn 'rhestr' arall lle mae'n rhaid i'r defnyddiwr allu dewis eitemau lluosog (y mae'r cod hwn yn caniatáu i mi eu gwneud yn berffaith). Wrth fynd ymlaen, dwi'n sylweddoli fy mod i wedi gwneud typo yng ngholofn A ac eisiau ei gywiro. Fel y mae'r cod hwn ar hyn o bryd, os af i mewn (clic dwbl, F2) a gwneud y cywiriad i'r gair "eitemau", yn y pen draw bydd y canlyniad hwn yn fy nghell:"Beth yw'r tair eitem rydych chi eu heisiau fwyaf? Beth yw'r tri eitemau rydych chi eu heisiau fwyaf?" diolch ymlaen llaw am unrhyw help (gan ddefnyddiwr sy'n hoff iawn o VBA, ond sydd yn dal i fod yn y camau dysgu cynharaf!)
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Roeddwn i'n gallu cael y cod i weithio, ond yna pan achubais y ddogfen (gyda macros wedi'i galluogi), ei chau a'i dychwelyd, nid oedd y cod yn gweithio mwyach (er ei fod yn dal i fod yno). Ni allaf ddarganfod beth rydw i wedi'i wneud yn anghywir. Unrhyw syniadau?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Cynthia, Os na fydd yr awdur gwreiddiol yn ateb, byddaf yn cael ateb ichi ond dim ond ar 29 Rhag y byddaf o flaen cyfrifiadur eto. Dydw i ddim yn rhaglennydd VBA chwaith. Yr hyn y gallwch chi ei wneud yn y cyfamser yw chwiliad Google sut i adnabod rhif y golofn a gadael i'r cod redeg dim ond os yw data'n cael ei olygu yn y golofn(au) penodol hwnnw. Dwi wedi gwneud e ond mae'r côd ar fy PC gwaith ac yn methu cofio fe ar hyn o bryd, efallai trio rhoi debug.print ar target.column neu rywbeth i'r perwyl hwnnw i weld a yw'n rhoi rhif y golofn sy'n cael ei olygu . Sori Jennifer, ddim yn siwr am y mater ti'n ei gael :(
Lleihawyd y sylw hwn gan y safonwr ar y wefan
@Cynthia, Os bydd angen o hyd, dylech allu gwneud rhywbeth fel hyn i sicrhau bod y cod yn rhedeg ar golofnau penodol yn unig, yn fy achos i, colofn 34 a 35: Os (Targed.Column 34 A Tharged.Column 35) Yna Ymadael Is 'Rhowch y cod hwn ar y dechrau ar ôl eich datganiadau gwan
Lleihawyd y sylw hwn gan y safonwr ar y wefan
[dyfyniad] @Cynthia, Os bydd angen o hyd, dylech allu gwneud rhywbeth fel hyn i sicrhau bod y cod yn rhedeg ar golofnau penodol yn unig, yn fy achos i, colofnau 34 a 35: Os (Targed.Colofn 34 a Tharged.Colofn 35) Yna Exit Sub 'Rhowch y cod hwn ar y dechrau ar ôl eich datganiadau dimGan Mervyn[/quote] Helo @Mervyn, Wedi colli trac yr edefyn yn llwyr, ond diolch yn fawr iawn am eich ymatebion. Rwyf wedi ceisio cymhwyso'r Os (Targed.Column 34 A Tharged.Colofn 35) Yna Ymadael Is (mae fy fersiwn yn darllen If (Target.Column4 A Target.Column5) Yna Gadael Is fel y darparwyd gennych, ond rwy'n cael "Run-time gwall '438': Nid yw'r gwrthrych yn cefnogi'r priodwedd neu'r gwall " "dull hwn ar y llinell newydd hon. Dyma ychydig linellau cyntaf fy nghod: Is-daflen Waith Breifat_Change(ByVal Target As Range) Dim xRng As Range Dim xValue1 As String Dim xGwerth2 Fel Llinyn Os (Targed.Colofn4 A Tharged.Colofn5) Yna Ymadael Is Os Targed.Cyfrif > 1 Yna Gadael Is Ar Gwall Ail-ddechrau Nesaf Dim ond 6 colofn sydd gan fy nhaflen waith: Cwestiwn | Ateb | Categori | Is-gategori | Tagiau | Dolen llun Dim ond gostyngiadau gwerth lluosog sydd eu hangen arnaf yn Is-gategori a Thagiau (colofnau 4 a 5) Byddaf yn parhau i chwilio am wybodaeth fel yr awgrymwyd gennych ar 12/23, a byddaf yn edrych ar y ddolen a ddarparwyd gan yr Elusen.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
If Target.Column <> 34 Yna Ymadael Is

'Rhowch y cod hwn ar y dechrau ar ôl eich datganiadau gwan
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo Rwy'n defnyddio'r fformiwla hon ar hyn o bryd ac mae gan bob colofn â dilysiad data yr opsiwn dewis lluosog nawr, fodd bynnag rwyf am gyfyngu'r dewis lluosog i un golofn yn unig. A all rhywun olygu'r fformiwla hon i mi fel y gellir cymhwyso'r dewis lluosog i Golofn4 yn unig? Diolch :) Is-daflen Waith Breifat_Newid(ByVal Target As Range) 'Diweddarwyd: 2016/4/12 Dim xRng As Range Dim xGwerth1 Fel Llinyn Dim xGwerth 2 Fel Llinyn Os Target.Count > 1 Yna Gadael Is Ar Gwall Ail-ddechrau Gosod Nesaf xRng = Celloedd. Celloedd Arbennig(xlCellTypeAllValidation) Os yw xRng Yn Ddim Yna Gadael yr Is-Gais.EnableEvents = Anwir Os Ddim Application.Intersect(Targed, xRng) Onid oes Dim Yna xGwerth 2 = Targed.Gwerth Cymhwysiad. Dadwneud xValue1 = Targed.Gwerth Targed.Gwerth = xValue2 " Os xValue " Yna Os xValue1" " Yna Os xValue2 = xValue1 Neu _ InStr(2, xValue1,", " & xValue1) Neu _ InStr(2, xValue1, xValue1 & ",") Yna Target.Value = xValue2 Arall Target.Value = xValue1 &", " &xValue1 Diwedd Os Diwedd Os Diwedd Os Diwedd Os Diwedd Cais.EnableEvents = Is Diwedd Gwir Bydd unrhyw gymorth yn cael ei werthfawrogi!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Mae hyn yn gweithio'n dda, ond ni allaf dynnu eitem ar ôl ei dewis. Unrhyw awgrymiadau rhag ofn i mi glicio ar rywbeth yn ddamweiniol ac angen ei dynnu heb (gobeithio) glirio'r gell gyfan a dechrau drosodd? Hefyd, i'r rhai sy'n ceisio diffinio colofn neu golofnau, mae gan Contextures ychwanegiad gwych at y cod a ddarperir yma sy'n eich galluogi i wneud hynny. http://www.contextures.com/excel-data-validation-multiple.html#column
Lleihawyd y sylw hwn gan y safonwr ar y wefan
[dyfyniad]Mae hyn yn gweithio'n dda, ond ni allaf dynnu eitem ar ôl ei dewis. Unrhyw awgrymiadau rhag ofn i mi glicio ar rywbeth yn ddamweiniol ac angen ei dynnu heb (gobeithio) glirio'r gell gyfan a dechrau drosodd? Hefyd, i'r rhai sy'n ceisio diffinio colofn neu golofnau, mae gan Contextures ychwanegiad gwych at y cod a ddarperir yma sy'n eich galluogi i wneud hynny. http://www.contextures.com/excel-data-validation-multiple.html#columnTrwy Elusen[/quote] Cod yn gweithio'n iawn. Fodd bynnag, ni allaf i weld yn dad-ddewis eitem. Pan fyddaf am dynnu eitem o'r detholiad, nid yw'n cael ei dynnu. A oes unrhyw un arall yn profi'r broblem hon hefyd?[/dyfyniad] Helo bawb, Unrhyw atebion a ddarganfuwyd ar gyfer y broblem hon..rhannwch os gwelwch yn dda..
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, mae Code yn gweithio'n iawn. Fodd bynnag, ni allaf i weld yn dad-ddewis eitem. Pan fyddaf am dynnu eitem o'r detholiad, nid yw'n cael ei dynnu. A oes unrhyw un arall yn profi'r broblem hon hefyd?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
A oedd ymateb i'r mater hwn. Dyna'r un mater yr wyf yn ei gael. Nid yw'n ymddangos bod unrhyw ffordd i dynnu eitem sydd wedi'i dewis.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
dileu'r cynnwys yn y gell, yna ail-ddewis
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo i gyd, mae'r cod yma gyda fi ar ddalen excel ac mae'n glanhau'r cynnwys o'r gwymplen pan fydd y gell yn cael ei dewis - dwi'n gwybod pa ran o'r cod sy'n ei wneud (y rhan sy'n dweud 'fillRng.ClearContents') a finnau wedi ceisio defnyddio rhai o'r uchod i'w drwsio'n aflwyddiannus... Rwy'n newydd i raglennu VBA ac ati. A all unrhyw un gynnig unrhyw gymorth ar sut i'w newid fel nad yw'n glir pan ddewisir y gell ac ni fydd cofnodion dyblygu os gwelwch yn dda?? Opsiwn Penodol Dim llenwiRng Fel Amrediad Is-daflen Waith Breifat_SelectionChange(FyVal Target As Range) Dim Cymwysyddion Fel MSForms.ListBox Dim LBobj Fel OLEOobject Dim i Fel Set Hir LBobj = Me.OLEObjects("ListBox1") Gosod Cymhwysterau = LBobj.Object > 3 A Target.Column = 3 Yna Gosod fillRng = Targed Gyda LBobj .Chwith = fillRng.Left .Top = fillRng.Top .Width = fillRng.Width .Height = 155 .Gweladwy = Diwedd Gwir Ag Arall LBobj.Visible = Gau Os Ddim yn llenwiRng Ydy Dim Yna llenwiRng.ClearCynnwys Gyda Chymhwysterau Os .ListCount 0 Yna I = 0 I .ListCount - 1 Os fillRng.Value = "" Yna Os .Selected(i) Yna fillRng.Value = .List(i) Arall Os .Selected(i) Yna fillRng.Value = _ fillRng.Value &", " & .List(i) Diwedd Os Diwedd Nesaf Os O blaid i = 0 I .ListCount - 1 .Selected(i) = Anghywir Diwedd Nesaf Gyda Set fillRng = Dim Diwedd Os Diwedd Os Diwedd Is
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, gallwn wneud fy gwymplen yn berffaith, ond fy nghwestiwn yw: pan fyddaf yn dewis yr holl eitemau sydd wedi'u nedded mae'n mynd un ar ôl y llall mewn ffordd lorweddol trwy'r gell, er enghraifft: melyn, gwyrdd, du, coch. Ond sut alla i wneud iddo edrych mewn ffordd fertigol?, yn debycach er enghraifft: Oren blanck melyn Coch Oherwydd yn llorweddol mae'r gell yn dod yn eithaf hir wrth ddewis llawer o eitemau. A allech ddweud wrthyf a oes unrhyw ffordd i wneud hyn?. Diolch yn fawr, Desiree
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Llwyddais i ddefnyddio'r cod hwn a chreu blychau cwymplen dewis lluosog yn llwyddiannus. Gweithiodd pan gaeais ac ail-agor ar ddiwrnodau gwahanol. Fodd bynnag, nawr nid yw pob un o'r celloedd a ddewisais yn wreiddiol yn caniatáu dewis lluosog. Dim ond rhai a wnaed yn flaenorol, er gwaethaf defnyddio'r cod ar gyfer y daenlen gyfan. Gallwch chi helpu?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwy'n cael yr un broblem.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
mae'r celloedd yn fwyaf tebygol o gael eu cloi, cliciwch ar y dde ar bob un ohonynt, ewch i fformatio celloedd, amddiffyniad, yna dad-diciwch yr opsiwn celloedd wedi'u cloi
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Creais gwymplen lle gellid dewis nifer o ddetholiadau testun megis "maeth", "pwysau", a "gwaith" ar gyfer rheswm pob galwr i ffonio i mewn. Mae gennyf dudalen grynodeb lle rwyf am weld faint o bob rheswm eu nodi mewn mis penodol. Pa fformiwla fyddwn i'n ei defnyddio i ddweud wrth Excel i dynnu allan a chyfrif pob un o'r rhain ar wahân mewn mis penodol? Ar hyn o bryd, y ffordd yr wyf wedi ei sefydlu, dim ond yn cyfateb yn gywir os oes gennyf un rheswm yn y gell ar gyfer pob galwr.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Diwrnod da,
Mae'n ddrwg gennym ni all eich helpu i ddatrys y broblem hon. Rhowch wybod i mi os dewch o hyd i'r ateb.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwy'n ceisio creu 4 colofn gyda rhestrau cwymplen lle gallaf ddewis gwerthoedd lluosog. Sut ydw i'n addasu'r cod VBA "gwymp i lawr gyda dewis lluosog" fel bod pan fyddaf yn clicio ar werth sydd eisoes wedi'i nodi yn ei dynnu o'r gell? Diolch ymlaen llaw.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Annwyl Randy,
Beth ydych chi'n ei olygu "pan fyddaf yn clicio ar werth sydd eisoes wedi'i nodi mae'n ei dynnu o'r gell?"
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Yr un cwestiwn sydd gennyf. Nid yw fy gwymplen yn cofio'r gwerthoedd a ddewiswyd. Os bydd rhywun yn clicio ar gell sydd eisoes wedi'i phoblogi (nid ganddyn nhw, ond gan rywun arall) mae'r gwerthoedd a ddewiswyd yn cael eu clirio ac mae'r gell yn wag eto.
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwy'n defnyddio'r cod isod i ganiatáu aml-ddewis ar daflenni gwaith lluosog ond pan fyddaf yn mynd i daflen waith arall yn y llyfr gwaith mae'r aml-ddewis yn mynd i ffwrdd. Pan fyddaf yn cadw'r ffeil ac yn dod yn ôl i mewn bydd yn gweithio ar gyfer un tab gyda'r cod ond eto pan fyddaf yn clicio ar dab arall gyda'r cod nid yw'n gweithio mwyach. Unrhyw syniad sut i'w drwsio felly os byddaf yn clicio ar daflen waith gyda'r cod VBA bydd bob amser yn caniatáu aml-ddewis?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Helo, ich bin totaler VBA Laie. Ich versuche den Cod felly zu modifizieren, dass
a) marw Mehrfachauswahl nicht in allen, sondern nur ein zwei Spalten Aktiv ist
b) ich Eitemau auch wieder rausnehmen kann, zB in dem ich in der Listenauswahl das Item noch einmal anklicke (Beispiel: ich habe über die Mehrfachauswahl ausgewählt: A, D, X, Y... nun fäzucht mir a nimal D. gehört. Beim aktuellen Code müsste ich Eingaben entfernen und neu auswählen).
Diolch ymlaen llaw!
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Ni allaf fwrw ymlaen â chreu'r dewis lluosog o'r gwymplen. Rwyf wedi gwrando ar diwtorial a darllen deunydd ond yn dal methu creu. Yn garedig, all rhywun fy helpu?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Rwy'n gwybod y gallai hwn fod yn hap cyfan gwbl, ond rwy'n defnyddio amrywiad o'r VBA heb unrhyw broblem. Ac eithrio ar un dudalen, os dewiswch y tri opsiwn cyntaf, ni fydd yn gadael ichi ddewis y pedwerydd. Bydd yn gadael i chi ddewis y 5ed, 6ed, ac yn y blaen, dim ond nid y 4ydd opsiwn. Syniadau?
Lleihawyd y sylw hwn gan y safonwr ar y wefan
Hi Robert,
Rwyf wedi profi'r cod ond nid wyf wedi dod o hyd i'r broblem fel y soniasoch. A allwch chi ddweud wrthyf pa fersiwn Excel ydych chi'n ei ddefnyddio? Diolch i chi am eich sylw.
Nid oes unrhyw sylwadau wedi'u postio yma eto
Llwytho mwy o
Gadewch eich sylwadau
Postio fel Gwestai
×
Graddiwch y swydd hon:
0   Cymeriadau
Lleoliadau a Awgrymir