Taulukon nimi soluun

Kuinka saan taulukon nimen soluun?
296216
Äänestä

Muut lukivat myös

Vastaukset 29

Vanhimmat
  • Siis ko. solun sisällöksi
    =MID(CELL("filename");FIND("]";CELL("filename")) 1;255
    ja pitäisi toimia, vai?

    (Office 2007 suomi)

    Äänestä

  • Excelhirmu kirjoitti:

    Siis ko. solun sisällöksi
    =MID(CELL("filename");FIND("]";CELL("filename")) 1;255
    ja pitäisi toimia, vai?

    (Office 2007 suomi)

    se lontoon versiossa...
    suomiversio
    =POIMI.TEKSTI(SOLU("tiedostonnimi");ETSI("]";SOLU("tiedostonnimi")) 1;255)

    Äänestä

  • kunde kirjoitti:

    se lontoon versiossa...
    suomiversio
    =POIMI.TEKSTI(SOLU("tiedostonnimi");ETSI("]";SOLU("tiedostonnimi")) 1;255)

    kiitos paljon!

    Äänestä

  • kunde kirjoitti:

    se lontoon versiossa...
    suomiversio
    =POIMI.TEKSTI(SOLU("tiedostonnimi");ETSI("]";SOLU("tiedostonnimi")) 1;255)

    Kaavassa on virhe, antaa sivun nimen. Ao. toimii oikein:
    =POIMI.TEKSTI(SOLU("tiedostonnimi");ETSI("[";SOLU("tiedostonnimi")) 1;255)

    Kumma, että nuo Mikrosoftin omilla sivuilla olevat kaavaesimerkit eivät toimi??

    Äänestä

  • Ei toiminu oikein kirjoitti:

    Kaavassa on virhe, antaa sivun nimen. Ao. toimii oikein:
    =POIMI.TEKSTI(SOLU("tiedostonnimi");ETSI("[";SOLU("tiedostonnimi")) 1;255)

    Kumma, että nuo Mikrosoftin omilla sivuilla olevat kaavaesimerkit eivät toimi??

    Ei toimi tämäkään.

    Äänestä

  • Anonyymi00023 kirjoitti:

    Ei toimi tämäkään.

    Plussa yksinäisen ykkösen eteen. Nykyään Suomi24 piilottaa sen.

    Äänestä

Alkuperäinen kysymys oli:
"Kuinka saan taulukon nimen soluun?"

Tarkoittaako Excelhirmu, että soluun tulee kyseisen tiedoston nimi vai taulukkovälilehden nimi?

Viimeisin vastaus viittaa tiedoston nimeen, tosin en saanut toimimaan.

Äänestä

No nyt sain toimimaan, käsitin ohjeen vasta monen kokeilun jälkeen.

Te palstan käyttäjät olette kyllä ihan hillittömän taitavia Excelissä.

Itsekin tykkään auttaa sen vähän mitä osaan, mutta joku bisneshemmo kyllä ihmettelisi ihmisten intoa auttaa toisia täysin ilmaiseksi.

Hyvin moni on tällä palstalla saanut paljon apua töihinsä, ja täysin ilmaiseksi.

Erittäin suuri ristiriita: Yhteiskunta vain kovenee, pelkkä rahallinen voitto merkitsee ja siksi ihmisiä potkitaan työttömiksi. JA SITTEN ON SOME, jossa ihmiset tykkää auttaa toisiaan.

Kiitos teille kaikille

Äänestä
  • Parempi hiukan aivojumpata, kuin vaan dokata kaljaa helteessä palmun alla päivät pitkät...

    Keep EXCELing
    @Kunde

    Äänestä

Mitenkäs mahtaisi saada Sheet1:lle Tauli1, Taul2, Taul3 jne niimet haluttuihin ruutuihin...?

Esnimmäiselle sivulle siis tarkoitus tehdä koosterivit alasivuista.

Äänestä
  • Function SivunNimi(n)
       SivunNimi = Sheets(n).Name
    End Function

    Äänestä

Tuo taitaa olla vähän edistyneempää funktiointia... Kuinkas tuo taulukkoon syötetään - ei mene ihan suoraan tuosta kopioimalla?

Lisää funktio -valikoista en ainakaan löytänyt.

Äänestä
  • Dveloper-välilehdeltä kohta Visual Basic . aukeaa Visual Basic for Applications. Sieltä: Insert - Module - aukeaa tyhjä ikkuna. Kopioi tuo funktio sinne.

    Itse tehtyjä funktioita voi käyttää kuten Excelin vakiofunktiotkin.Parametrinä annetaan numero ja funktio palauttaa niin monennen välilehden nimen. Jotta tehdyt funktiot tai makrot säilyvät, asiakirja on muistettava tallettaa muodossa .xlsm.

    Ellei sinulla ole Developer-välilehteä, sen saa esiin seuraavasti:
    File _ Options - Customise Ribbon - merkitse oikealta kohta Developer

    Äänestä

Mikä idea on kaavalla saada taulukon nimi soluun.. Eikös helpointa olisi vain kirjoittaa se siihen soluun?

Äänestä

Teen työpohjaa, välilehden nimeämällä koostesivulle saisi tuolla tavalla suoraan oikean nimikkeen. Yksittäisen taulukon ja muutaman välilehden kanssa tietenkin on helpompi vain kirjoittaa se itse, mutta kyse on vuosien aikana kertyvistä tuhansista toistoista, joihin ei tarvitse käyttää työaikaa, jos automaatio toimii. Ja kysehän on automaattisesta tietojen käsittelystä, laitetaan tietokone töihin tekemään sitä mihin se on suunniteltu.

Äänestä
  • Toimii kyllä. Ei vain päivity automaattisesti soluun, kun muuttaa välilehden nimeä. Ratkaisua tähän?

    Äänestä

ThisWorkbook moduuliin...

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Range("A1") = Sh.Name
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Range("A1") = Sh.Name
End Sub

Äänestä
  • Toimii kerran. Miten saa toimimaan niin, että vaihtuu joka kerta solussa, kun muuttaa välilehden nimeä?

    Äänestä

  • Tupmo kirjoitti:

    Toimii kerran. Miten saa toimimaan niin, että vaihtuu joka kerta solussa, kun muuttaa välilehden nimeä?

    Kyllä minulla toimii OK. eli uudelleennimeä ko taulukon nimi ja klikkaat jotakin soluataulukossa, niin nimi päivittyy tai jos aktivoit jonkun toisen taulukon ja palaat ko. taulukkoon niin nimi päivittyy.
    Tämä koodi antaa vaan ko. taulukon nimen ja jos yrittää jollain muulla keinolla esim.
    Tämmösen funktiolla viitata muihin taulukoihin niin ongelmia tulee ja ei päivity tietenkään
    Function SivunNimi(n)
    SivunNimi = Sheets(n).Name
    End Function
    ongelmaksi tulee se, että jos taulukkoa siirretään esim 1 oikealle, sen indeksi kasvaa yhdellä ja ei palauta enää alkuperäisen taulukon nimeä vaan edelliseen indeksiin viitatun taulukon nimen( indeksi-1).
    Alempana on mun postaama koodi, joka käyttää ovelasti taulukon määritettyä nimeä(koodinimi taulukolle) ovelasti ja koska se on taulukkokohtainen se on kuin sormenjälki ihmisellä. Ei haittaa vaikka siirtelee, niin aina palautuu oikea taulukon nimi ;-)

    Äänestä

  • Mulla päivittyy vasta kun klikkaan kyseiseen soluun (niin että kaava tulee esiin) ja klikkaan "enter".

    Äänestä

  • Tupmo kirjoitti:

    Mulla päivittyy vasta kun klikkaan kyseiseen soluun (niin että kaava tulee esiin) ja klikkaan "enter".

    tarkoitat varmaan tätät koodia?
    Function SivunNimi(n)
    SivunNimi = Sheets(n).Name
    End Function

    se ei päivity ja ongelma myös siinä, jos siirrät taulukkoa palauttaa väärän taulukon nimen. Ainoat keinot on APi ja toi allaoleva koodini, jotka palauttavat oikean taulukon siirtelee sitä tai ei.
    tämä päivittyy
    Function SivunNimi(n)
    Application. Volatile
    SivunNimi = Sheets(n).Name
    End Function

    Keep EXCELing
    @Kunde

    Äänestä

  • Jees! Nyt toimii! Mahtavaa, kiitos!

    Äänestä

hieman ovelampi tapa. Lisätään taulukon nimiin koodinimi taulukolle ja käytetään sitä.
moduuliin...
Option Base 1
Public Nimet() As Variant
Dim i As Long
'suorita tämä makro ekaksi...
Sub UniikkiNimet()

' lisää haluamasi koodinimi taulukoille matriisissa
Nimet = Array("Makkara", "Kinkku", "Salami")
For i = 1 To UBound(Nimet)
ThisWorkbook.Worksheets(i).Names.Add Nimet(i), "Huuhaa"
Next
End Sub

Function HaeNimi(KoodiNimi As String) As String
Dim Nimi As Name
Dim Taulukko As Worksheet
On Error Resume Next
Application.Volatile True
For Each Taulukko In ThisWorkbook.Worksheets
Set Nimi = Taulukko.Names(KoodiNimi)
If Not Nimi Is Nothing Then
HaeNimi = Nimi.Parent.Name
Exit Function
End If
Err.Clear
Next
End Function

Keep EXCELing
@Kunde

Äänestä

jäi käyttöohje pois eli
soluun mihin haluat taulukon nimen kaava =HaeNimi("Salami") eli edellisen postauksen mukkan kolmas taulukko olisi nimetty koodilla Salami. Ei haitta vaikka siirtelee sitten taulukkoa eri paikkaa ja oikea nimi tulee silti....

Keep EXCELing
@Kunde

Äänestä

( LibreOffice 6.0 Calc )
Tässä on jo monenlaista tarjottu, mutta tämä puuttuu:
https://s25.postimg.cc/571un16u7/Tauluko-nimi.gif

Tuossa animaatiossa, minä tupla-nausautan hiirellä solua jonka jälkeen painan hiiren oikeanpuoleista painiketta, avatakseni PopUp-valikon, ja loppuhan näkyykin animaatiossa.

Äänestä
  • ja mitenkäs tämä liittyy EXCELìin?

    Äänestä

  • Kundepuu kirjoitti:

    ja mitenkäs tämä liittyy EXCELìin?

    Mietippä sitä.

    Äänestä

Heitä helvettiin se ms-office.

Äänestä

Kommentoi aloitusta


Excelhirmu kirjoitti:

Kuinka saan taulukon nimen soluun?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu