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

Conas liostaí anuas a shioncronú i mbileoga oibre iolracha in Excel?

Cuir i gcás go bhfuil liostaí anuas agat ar roinnt bileoga oibre i leabhar oibre ina bhfuil go díreach na míreanna anuas céanna. Anois, ba mhaith leat na liostaí anuas a shioncronú thar bileoga oibre ionas go mbeidh na liostaí anuas i mbileoga oibre eile sioncrónaithe go huathoibríoch nuair a roghnaíonn tú mír ó liosta anuas i mbileog oibre amháin. Soláthraíonn an t-alt seo cód VBA chun cabhrú leat an fhadhb seo a réiteach.

Sioncrónaigh liostaí anuas i mbileoga oibre iolracha le cód VBA


Sioncrónaigh liostaí anuas i mbileoga oibre iolracha le cód VBA

Mar shampla, tá na liostaí anuas i gcúig bhileog oibre ainmnithe Bileog 1, Bileog 2, ..., Bileog 5, chun na liostaí anuas i mbileoga oibre eile a shioncronú de réir an roghnúcháin anuas i mBileog1, cuir an cód VBA seo a leanas i bhfeidhm chun é a dhéanamh.

1. Oscail Bileog 1, cliceáil ar dheis ar an táb bileog agus roghnaigh Féach an cód ón roghchlár cliceáil ar dheis.

2. Sa Microsoft Visual Basic d’Fheidhmchláir fhuinneog, greamaigh an cód VBA seo a leanas isteach sa Bileog 1 (Cód) fhuinneog.

Cód VBA: Sioncrónaigh liosta anuas i mbileoga oibre iolracha

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20220815
    Dim tSheet1 As Worksheet
    Dim tRange As Range
    Dim xRangeStr As String
    On Error Resume Next
    If Target.Count > 1 Then Exit Sub
    
    xRangeStr = "A2:A11"

    Set tRange = Intersect(Target, Range(xRangeStr))
    If Not tRange Is Nothing Then
        xRangeStr = tRange.Address
        Application.EnableEvents = False
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet2")
        tSheet1.Range(xRangeStr).Value = Target.Value
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet3")
        tSheet1.Range(xRangeStr).Value = Target.Value
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet4")
        tSheet1.Range(xRangeStr).Value = Target.Value
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet5")
        tSheet1.Range(xRangeStr).Value = Target.Value
        Application.EnableEvents = True
    End If
    
End Sub

Nótaí:

1) Sa chód, A2: A11 is é an raon ina bhfuil an liosta anuas. Bí cinnte go bhfuil gach liosta anuas sa raon céanna thar bileoga oibre éagsúla.
2) Bileog 2, Bileog 3, Bileog 4 agus Sheet5 is bileoga oibre iad ina bhfuil liostaí anuas is mian leat a shioncronú bunaithe ar an liosta anuas i mBileog1;
3) Chun tuilleadh bileoga oibre a chur leis an gcód, cuir an dá líne seo a leanas roimh an líne “Application.EnableEvents = Fíor”, ansin athraigh ainm na bileoige “Sheet5” ar an ainm atá uait.
Socraigh tSheet1 = ActiveWorkbook.Bileoga Oibre ("Bileog5")
tSheet1.Range(xRangeStr).Luach = Sprioc.Luach

3. Brúigh an Eile + Q eochracha chun an Microsoft Visual Basic d’Fheidhmchláir fhuinneog.

As seo amach, nuair a roghnaíonn tú mír ón liosta anuas i Bileog 1, déanfar na liostaí anuas sna bileoga oibre sonraithe a shioncronú go huathoibríoch chun an rogha céanna a bheith acu. Féach ar an taispeántas thíos.


Taispeántas: Sioncrónaigh Liostaí Anuas i mBileoga Oibre Il In Excel


Na hUirlisí Táirgiúlachta Oifige is Fearr

Réitíonn Kutools for Excel an chuid is mó de do chuid Fadhbanna, agus Méadaíonn sé do Tháirgiúlacht 80%

  • Athúsáid: Cuir isteach go tapa foirmlí casta, cairteacha agus aon rud a d'úsáid tú roimhe seo; Cealla a Chriptiú le pasfhocal; Cruthaigh Liosta Ríomhphoist agus seol ríomhphoist ...
  • Barra Foirmle Super (cuir línte iolracha téacs agus foirmle in eagar go héasca); Leagan Amach Léitheoireachta (líon mór cealla a léamh agus a chur in eagar go héasca); Greamaigh go dtí an Raon Scagtha...
  • Cumaisc Cealla / Sraitheanna / Colúin gan Sonraí a chailleadh; Ábhar Cealla Scoilt; Comhcheangail Sraitheanna / Colúin Dúblacha... Cill Dúblach a Chosc; Déan comparáid idir Ranganna...
  • Roghnaigh Dúblach nó Uathúil Sraitheanna; Roghnaigh Blank Rows (tá na cealla uile folamh); Aimsigh Super agus Fuzzy Aimsigh i go leor Leabhar Oibre; Roghnaigh go randamach ...
  • Cóip Díreach Cealla Il gan tagairt fhoirmle a athrú; Tagairtí Cruthaigh Auto chuig Bileoga Il; Cuir Urchair isteach, Boscaí Seiceála agus go leor eile ...
  • Sliocht Téacs, Cuir Téacs leis, Bain de réir Poist, Bain Spás; Subtotals Paging a chruthú agus a phriontáil; Tiontaigh Idir Ábhar Cealla agus Tráchtanna...
  • Scagaire Super (scéimeanna scagaire a shábháil agus a chur i bhfeidhm ar bhileoga eile); Ard-Sórtáil de réir míosa / seachtaine / lae, minicíocht agus níos mó; Scagaire Speisialta le cló trom, iodálach ...
  • Comhcheangail Leabhair Oibre agus Bileoga Oibre; Cumaisc Táblaí bunaithe ar eochaircholúin; Roinn Sonraí i Ilbhileoga; Baisc Tiontaigh xls, xlsx agus PDF...
  • Níos mó ná 300 gné chumhachtach. Tacaíonn Office / Excel 2007-2021 agus 365. Tacaíonn sé le gach teanga. Imscaradh éasca i d'fhiontar nó d'eagraíocht. Gnéithe iomlána triail saor in aisce 30-lá. Ráthaíocht airgid ar ais 60-lá.
cluaisín kte 201905

Tugann Tab Oifige comhéadan Tabbed chuig Office, agus Déan Do Obair i bhfad Níos Éasca

  • Cumasaigh eagarthóireacht agus léamh tabbed i Word, Excel, PowerPoint, Foilsitheoir, Rochtain, Visio agus Tionscadal.
  • Oscail agus cruthaigh cáipéisí iolracha i gcluaisíní nua den fhuinneog chéanna, seachas i bhfuinneoga nua.
  • Méadaíonn do tháirgiúlacht 50%, agus laghdaíonn sé na céadta cad a tharlaíonn nuair luch duit gach lá!
bun officetab
Sórtáil tuairimí de réir
Comments (5)
Níl rátálacha ar bith fós. Bí ar an gcéad duine a rátáil!
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Haigh,

Conas is féidir liom é seo a dhéanamh má tá mo chuid anuas i raonta éagsúla? Chun níos mine a dhéanamh, tá titim amháin anuas agam ar bhileog 7 atá i gcill B7 agus an anuas céanna ar bhileog 6 i gcill B2.

Go raibh maith agat,
Elaine
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit E,
Is féidir leis an gcód VBA seo a leanas cabhrú leat.
Anseo glacaim Sheet6 mar phríomh-bhileog oibre, cliceáil ar dheis ar an gcluaisín bileog, roghnaigh View Code ón roghchlár cliceáil ar dheis, ansin cóipeáil an cód seo a leanas sa fhuinneog Sheet6 (Cód). Nuair a roghnaíonn tú mír ar bith ón liosta anuas i B2 de Sheet6, déanfar an liosta anuas i B7 de Sheet7 a chomhchronú ionas go mbeidh an mhír roghnaithe chéanna aige.

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20221025
    Dim tSheet1 As Worksheet
    Dim tRange As Range
    Dim xRangeStr As String
    On Error Resume Next
    If Target.Count > 1 Then Exit Sub
    
    xRangeStr = "B2"
    
    Set tRange = Range("B7")
    If Not tRange Is Nothing Then
        xRangeStr = tRange.Address
        Application.EnableEvents = False
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet7")
        tSheet1.Range(xRangeStr).Value = Target.Value
        Application.EnableEvents = True
    End If
    
End Sub
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Hi Criostail,

Go raibh míle maith agat as do fhreagra, d'oibrigh do chód! Tá cill ceart agam faoi b2 agus b7, b3 agus b8 faoi seach a gcaithfidh an fheidhm chéanna a bheith acu. Rinne mé iarracht do chód a athscríobh mar a thaispeántar thíos, ach níor oibrigh sé seo. D'athraigh b7 seachas b8 nuair a d'athraigh mé b3. An bhféadfadh tú a bheith in ann a aithint cad atá mé ag déanamh mícheart?

Go raibh míle maith agat an méid sin!

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20221025
    Dim tSheet1 As Worksheet
    Dim tRange1 As Range
    Dime tRange2 As Range
    Dim xRangeStr1 As String
    Dim xRangeStr2 As String
    On Error Resume Next
    If Target.Count > 1 Then Exit Sub
    
    xRangeStr1 = "B2"
    xRangeStr2="B3"
    
    Set tRange1 = Range("B7")
    If Not tRange1 Is Nothing Then
        xRangeStr1 = tRange1.Address
        Application.EnableEvents = False
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet7")
        tSheet1.Range(xRangeStr1).Value = Target.Value
        Application.EnableEvents = True
    End If
    
    Set tRange2 = Range("B8")
    If Not tRange2 Is Nothing Then
        xRangeStr2 = tRange2.Address
        Application.EnableEvents = False
        Set tSheet1 = ActiveWorkbook.Worksheets("Sheet7")
        tSheet1.Range(xRangeStr2).Value = Target.Value
        Application.EnableEvents = True
    End If

End Sub
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Dia duit E,
Tá rud éigin cearr leis an gcód VBA a d'fhreagair mé duit thuas.
Maidir leis an gceist nua a luaigh tú, bain triail as an gcód seo a leanas.

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20221031
    
    Dim xBool1 As Boolean
    Dim xBool2 As Boolean
    Dim xRgStr As String
    Dim tRange As Range
    
    xRangeStr1 = "B2"
    xRangeStr2 = "B3"
    xRgStr = ""
    
    On Error Resume Next
    If Target.Count > 1 Then Exit Sub
    xBool1 = Intersect(Target, Range(xRangeStr1)) Is Nothing
    xBool2 = Intersect(Target, Range(xRangeStr2)) Is Nothing
    
    If xBool1 And xBool2 Then Exit Sub
    
    xRgStr = Target.Address(False, False, xlA1, False, False)
    
    If Target.Address(False, False, xlA1, False, False) = xRangeStr1 Then
        xRgStr = "b7"
    ElseIf Target.Address(False, False, xlA1, False, False) = xRangeStr2 Then
        xRgStr = "b8"
    End If
    If xRgStr = "" Then Exit Sub
    
    Application.EnableEvents = False
    Set tSheet1 = ActiveWorkbook.Worksheets("Sheet7")
    tSheet1.Range(xRgStr).Value = Target.Value
    Application.EnableEvents = True

End Sub
Rinne an modhnóir ar an láithreán an trácht seo a íoslaghdú
Criostail,

Go raibh míle maith agat as do fhreagra, d'oibrigh sé seo! Conas a d'fhéadfainn an cód a mhodhnú chun cill eile a chur leis an mbileog chéanna 6, B3 a raibh gá le sioncrónú le B8 i mbileog 7 freisin? Rinne mé iarracht é a athrú thíos, ach mar sin féin cuireann sé a bhfuil i B3 ar bhileog 6 i B7 ar bhileog 7 in ionad B8.


Fo-Bileog Oibre Príobháideach_Change (Sprioc ByVal Mar Raon)
' arna nuashonrú ag Extendoffice 20221025
Dim tBileog1 Mar Bhileog Oibre
Dim tRange1 Mar Raon
Dim tRange2 Mar Raon
Dim xRangeStr1 Mar Teaghrán
Dim xRangeStr2 Mar Teaghrán
Ar Lean Earráid Aghaidh
Má tá Sprioc.Comhaireamh > 1 Ansin Scoir Fo

xRangeStr1 = "B2"
xRangeStr2 = "B3"

Socraigh tRange1 = Raon ("B7")
Mura bhfuil tRange1 ar bith ansin
xRangeStr1 = tRange1.Address
Application.EnableEvents = Bréagach
Socraigh tSheet1 = ActiveWorkbook.Bileoga Oibre ("Bileog7")
tSheet1.Range(xRangeStr1).Luach = Sprioc.Luach
Application.EnableEvents = Fíor
Deireadh Má

Socraigh tRange2 = Raon ("B8")
Mura bhfuil tRange2 ar bith ansin
xRangeStr2 = tRange2.Address
Application.EnableEvents = Bréagach
Socraigh tSheet1 = ActiveWorkbook.Bileoga Oibre ("Bileog7")
tSheet1.Range(xRangeStr2).Luach = Sprioc.Luach
Application.EnableEvents = Fíor
Deireadh Má

Fo Deireadh
Níl aon tráchtanna curtha suas anseo go fóill
Fág do chuid tuairimí
Ag postáil mar Aoi
×
Ráta an post seo:
0   Carachtair
Suímh Molta

Lean orainn

Cóipcheart © 2009 - www.extendoffice.com. | Gach ceart ar cosaint. Cumhachtaithe ag ExtendOffice. | léarscáil an tSuímh
Is trádmharcanna nó trádmharcanna cláraithe de chuid Microsoft Corporation sna Stáit Aontaithe agus / nó i dtíortha eile iad lógó Office agus Office.
Cosanta ag Sectigo SSL