Ki jan yo kraze lyen nan Excel

Kominikasyon se yon karakteristik trè itil nan Excel. Apre yo tout, trè souvan itilizatè yo dwe itilize enfòmasyon ki soti nan lòt dosye. Men, nan kèk sitiyasyon, yo ka fè plis mal pase byen. Apre yo tout, pou egzanp, si ou voye dosye sa yo pa lapòs, lyen yo pa travay. Jodi a nou pral pale an plis detay sou sa yo dwe fè pou evite yon pwoblèm konsa.

Ki sa ki relasyon nan Excel

Relasyon nan Excel yo trè souvan itilize ansanm ak fonksyon tankou VPRpou jwenn enfòmasyon nan yon lòt liv travay. Li ka pran fòm lan nan yon lyen espesyal ki gen adrès la nan pa sèlman selil la, men tou, liv la nan ki done yo sitiye. Kòm yon rezilta, tankou yon lyen sanble yon bagay tankou sa a: =VCHACHUP(A2;'[Komèsyal 2018.xlsx]Rapò'!$A:$F;4;0). Oswa, pou yon reprezantasyon ki pi senp, reprezante adrès la nan fòm sa a: ='[Komèsyal 2018.xlsx]Rapò'!$A1. Ann analize chak eleman lyen nan kalite sa a:

  1. [Komèsyal 2018.xlsx]. Fragman sa a gen yon lyen ki mennen nan dosye ou vle jwenn enfòmasyon an. Li rele tou sous la.
  2. foto. Nou te itilize non sa a, men sa a se pa non an ki ta dwe. Blòk sa a gen non fèy ou bezwen jwenn enfòmasyon an.
  3. $A:$F ak $A1 – adrès yon selil oswa yon seri done ki nan dokiman sa a.

Aktyèlman, pwosesis pou kreye yon lyen nan yon dokiman ekstèn yo rele lyen. Apre nou fin anrejistre adrès selil ki nan yon lòt dosye, sa ki nan tab la "Done" chanje. Savwa, bouton an "Chanje koneksyon" vin aktif, avèk èd nan ki itilizatè a ka edite koneksyon ki deja egziste yo.

Sans nan pwoblèm nan

Kòm yon règ, pa gen okenn difikilte adisyonèl leve yo nan lòd yo sèvi ak lyen. Menm si yon sitiyasyon rive kote selil yo chanje, Lè sa a, tout lyen yo otomatikman mete ajou. Men, si ou deja chanje non liv travay la tèt li oswa deplase li nan yon adrès diferan, Excel vin san fòs. Se poutèt sa, li pwodui mesaj sa a.

Ki jan yo kraze lyen nan Excel

Isit la, itilizatè a gen de opsyon posib pou kòman yo aji nan sitiyasyon sa a. Li ka klike sou "Kontinye" ak Lè sa a, chanjman yo pa pral mete ajou, oswa li ka klike sou "Chanje Asosyasyon yo" bouton, ak ki li ka mete ajou yo manyèlman. Apre nou klike sou bouton sa a, yon lòt fenèt ap parèt kote li pral posib pou chanje lyen yo, ki endike ki kote dosye ki kòrèk la sitiye nan moman sa a ak kisa li rele.

Ki jan yo kraze lyen nan Excel

Anplis de sa, ou ka edite lyen atravè bouton ki koresponn lan ki sitiye sou tab la "Done". Itilizatè a ka jwenn tou ke koneksyon an kase pa erè a #LINK, ki parèt lè Excel pa ka jwenn aksè nan enfòmasyon ki sitiye nan yon adrès espesifik akòz lefèt ke adrès la li menm pa valab.

Ki jan yo dekonekte nan excel

Youn nan metòd ki pi senp yo rezoud sitiyasyon ki dekri pi wo a nan ka ou pa ka mete ajou kote dosye a lye tèt ou se efase lyen an tèt li. Sa a se espesyalman fasil fè si dokiman an gen yon sèl lyen. Pou fè sa, ou dwe fè sekans etap sa yo:

  1. Louvri meni an "Done".
  2. Nou jwenn seksyon an "Koneksyon", epi gen - opsyon a "Chanje koneksyon".
  3. Apre sa, klike sou "Dekonekte".

Si ou gen entansyon voye liv sa a pa lapòs bay yon lòt moun, li trè rekòmande pou w fè sa davans. Apre yo tout, apre yo fin efase lyen yo, tout valè ki genyen nan yon lòt dokiman yo pral otomatikman chaje nan dosye a, yo itilize nan fòmil, epi olye pou yo adrès selil la, enfòmasyon ki nan selil korespondan yo pral tou senpleman transfòme an valè. .

Ki jan yo dekonekte tout liv

Men, si kantite lyen vin twò gwo, manyèlman efase yo ka pran yon bon bout tan. Pou rezoud pwoblèm sa a nan yon sèl kou, ou ka itilize yon macro espesyal. Li nan addon VBA-Excel la. Ou bezwen aktive li epi ale nan tab la ki gen menm non an. Pral gen yon seksyon "Lyen", nan ki nou bezwen klike sou "Break all links" bouton an.

Ki jan yo kraze lyen nan Excel

Kòd VBA

Si li pa posib pou aktive sipleman sa a, ou ka kreye yon makro tèt ou. Pou fè sa, ouvri editè Visual Basic lè w peze Alt + F11 kle, epi ekri liy sa yo nan jaden an antre kòd.

Sub UnlinkWorkBooks()

    Dim WbLinks

    Dim ak As Long

    Select Case MsgBox ("Y ap retire tout referans sou lòt liv nan dosye sa a, epi fòmil ki fè referans ak lòt liv yo pral ranplase ak valè." & vbCrLf & "Èske w sèten ou vle kontinye?", 36, "Dekonekte?" )

    Ka 7′ No

        Sòti Sub

    Fen Chwazi

    WbLinks = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)

    Si se pa vid (WbLinks) Lè sa a

        Pou i = 1 Pou UBound(WbLinks)

            ActiveWorkbook.BreakLink Non:=WbLinks(i), Kalite:=xlLinkTypeExcelLinks

        Next

    Lòt Bagay

        MsgBox "Pa gen lyen ki mennen nan lòt liv nan dosye sa a.", 64, "Lyen ki mennen nan lòt liv"

    Fen Si

Fen Gwoup

Ki jan yo kase lyen sèlman nan seri a chwazi

De tan zan tan, kantite lyen yo gwo anpil, ak itilizatè a pè ke apre yo fin efase youn nan yo, li pa pral posib retounen tout bagay tounen si kèk te initil. Men, sa a se yon pwoblèm ki fasil pou evite. Pou fè sa, ou bezwen chwazi seri a nan ki efase lyen, ak Lè sa a, efase yo. Pou fè sa, ou dwe fè sekans aksyon sa yo:

  1. Chwazi dataset ki bezwen modifye.
  2. Enstale ajoute VBA-Excel la, epi ale nan tab ki apwopriye a.
  3. Apre sa, nou jwenn meni "Lyen" epi klike sou bouton "Break links in the selected ranges".

Ki jan yo kraze lyen nan Excel

Apre sa, tout lyen nan seri selil yo chwazi yo pral efase.

Kisa pou w fè si lyen yo pa kase

Tout sa ki anwo yo son bon, men nan pratik toujou gen kèk nuans. Pou egzanp, ka gen yon sitiyasyon kote lyen yo pa kase. Nan ka sa a, yon bwat dyalòg toujou parèt ki deklare ke li pa posib otomatikman mete ajou lyen yo. Kisa pou w fè nan sitiyasyon sa a?

  1. Premyèman, ou bezwen tcheke si nenpòt enfòmasyon ki genyen nan chenn yo nonmen. Pou fè sa, peze konbinezon kle a Ctrl + F3 oswa louvri tab la "Fòmil" - "Manadjè Non". Si non fichye a plen, Lè sa a, ou jis bezwen edite li oswa retire li tout ansanm. Anvan w efase ranje non yo, ou bezwen kopye fichye a nan yon lòt kote pou w ka retounen nan vèsyon orijinal la si yo te pran move etap yo.
  2. Si ou pa ka rezoud pwoblèm nan pa retire non, ou ka tcheke fòma kondisyonèl. Selil nan yon lòt tablo ka referans nan règ fòma kondisyonèl. Pou fè sa, jwenn atik ki koresponn lan sou tab la "Kay", epi klike sou bouton "Jesyon Fichye". Ki jan yo kraze lyen nan Excel

    Nòmalman, Excel pa ba ou kapasite pou bay adrès lòt liv travay nan fòma kondisyonèl, men ou fè si ou refere a yon seri non ak yon referans a yon lòt dosye. Anjeneral, menm apre yo fin retire lyen an, lyen an rete. Pa gen okenn pwoblèm nan retire tankou yon lyen, paske lyen an se an reyalite pa travay. Se poutèt sa, pa gen anyen move ki pral rive si ou retire li.

Ou kapab tou itilize fonksyon "Tcheke Done" pou chèche konnen si gen nenpòt lyen ki pa nesesè. Lyen anjeneral rete si yo itilize kalite "Lis" validation done yo. Men, kisa w dwe fè si gen anpil selil? Èske li vrèman nesesè yo tcheke chak nan yo sekans? Natirèlman pa. Apre yo tout, li pral pran yon tan trè long. Se poutèt sa, ou bezwen sèvi ak yon kòd espesyal siyifikativman sove li.

Opsyon Eksplis

'——————————————————————————————

Otè: The_Prist (Shcherbakov Dmitry)

' Pwofesyonèl devlopman aplikasyon pou MS Office nan nenpòt ki konpleksite

' Fè fòmasyon sou MS Excel

' https://www.excel-vba.ru

' [imel pwoteje]

'WebMoney—R298726502453; Yandex.Money — 41001332272872

' Objektif:

'——————————————————————————————

Sub FindErrLink ()

    'Nou bezwen gade nan Done -Chanje lyen ki mennen nan dosye sous la

    'epi mete mo kle yo isit la an miniskil (yon pati nan non fichye a)

    'Asterik jis ranplase nenpòt ki kantite karaktè konsa ou pa bezwen enkyete sou non egzak la

    Const sToFndLink$ = "*lavant 2018*"

    Dim rr Kòm Range, rc Kòm Range, rres Kòm Range, s$

    'Defini tout selil ak validation done

    Sou Erè Rezime Next

    Mete rr = ActiveSheet.UsedRange.SpecialCells(xlCellTypeAllValidation)

    Si rr pa anyen lè sa a

        MsgBox "Pa gen okenn selil ki gen validation done sou fèy aktif la", vbInformation, "www.excel-vba.ru"

        Sòti Sub

    Fen Si

    Sou Erè GoTo 0

    'tcheke chak selil pou lyen yo

    Pou chak rc nan rr

        'jis nan ka, nou sote erè - sa a ka rive tou

        'men koneksyon nou yo dwe san yo epi yo pral definitivman jwenn

        s = «»

        Sou Erè Rezime Next

        s = rc.Validasyon.Fòmil1

        Sou Erè GoTo 0

        'te jwenn - nou kolekte tout bagay nan yon seri separe

        Si LCase (yo) Tankou sToFndLink Lè sa a

            Si rres pa gen anyen Lè sa a

                Mete rres = rc

            Lòt Bagay

                Mete rres = Inyon (rc, rres)

            Fen Si

        Fen Si

    Next

    'si gen yon koneksyon, chwazi tout selil ki gen chèk done sa yo

    Si pa rres pa gen anyen lè sa a

        rres.Select

' rres.Interior.Color = vbRed 'si ou vle mete aksan sou ak koulè

    Fen Si

Fen Gwoup

Li nesesè fè yon modil estanda nan editè a macro, ak Lè sa a, mete tèks sa a la. Apre sa, rele fenèt makro a lè l sèvi avèk konbinezon kle Alt + F8, epi chwazi makro nou an epi klike sou bouton "Kouri". Gen kèk bagay ou dwe sonje lè w ap itilize kòd sa a:

  1. Anvan ou chèche yon lyen ki pa enpòtan ankò, ou dwe premye detèmine kisa lyen ki kreye l la sanble. Pou fè sa, ale nan meni an "Done" epi jwenn atik "Chanje lyen" la. Apre sa, ou bezwen gade non dosye a, epi presize li nan guillemets. Pou egzanp, tankou sa a: Const sToFndLink$ = "*lavant 2018*"
  2. Li posib pou ekri non an pa konplè, men tou senpleman ranplase karaktè ki pa nesesè ak yon asterisk. Ak nan guillemets, ekri non fichye a ak ti lèt. Nan ka sa a, Excel pral jwenn tout fichye ki gen yon fisèl konsa nan fen an.
  3. Kòd sa a sèlman kapab tcheke pou lyen nan fèy la ki se kounye a aktif.
  4. Avèk makro sa a, ou ka sèlman chwazi selil yo ke li te jwenn. Ou dwe efase tout bagay manyèlman. Sa a se yon plis, paske ou ka double-tcheke tout bagay ankò.
  5. Ou kapab tou fè selil yo make nan yon koulè espesyal. Pou fè sa, retire apòt la anvan liy sa a. rres.Interior.Color = vbRed

Anjeneral, apre ou fin ranpli etap sa yo ki dekri nan enstriksyon ki anwo yo, pa ta dwe gen okenn koneksyon plis nesesè. Men, si gen kèk nan yo nan dokiman an epi ou pa kapab retire yo pou yon rezon oswa yon lòt (yon egzanp tipik se sekirite nan done nan yon fèy), Lè sa a, ou ka itilize yon sekans diferan nan aksyon. Enstriksyon sa a valab sèlman pou vèsyon 2007 ak pi wo a.

  1. Nou kreye yon kopi backup nan dokiman an.
  2. Louvri dokiman sa a lè l sèvi avèk achiv la. Ou ka sèvi ak nenpòt ki sipòte fòma ZIP, men WinRar ap travay tou, osi byen ke youn nan bati nan Windows.
  3. Nan achiv la ki parèt, ou bezwen jwenn katab la xl, ak Lè sa a, louvri externalLinks.
  4. Katab sa a gen tout lyen ekstèn, chak nan yo koresponn ak yon fichye ki gen fòm externalLink1.xml. Tout nan yo se sèlman nimewote, ak Se poutèt sa itilizatè a pa gen opòtinite pou konprann ki kalite koneksyon sa a ye. Pou konprann ki kalite koneksyon, ou bezwen louvri katab _rels la, epi gade li la.
  5. Apre sa, nou retire tout oswa lyen espesifik, ki baze sou sa nou aprann nan fichye externalLinkX.xml.rels la.
  6. Apre sa, nou louvri dosye nou an lè l sèvi avèk Excel. Ap gen enfòmasyon sou yon erè tankou "Erè nan yon pati nan kontni an nan Liv la." Nou bay konsantman. Apre sa, yon lòt dyalòg ap parèt. Nou fèmen li.

Apre sa, tout lyen yo ta dwe retire.

Kite yon Reply