Excel ZULI Step 7 erstellen

mitchih

Level-2
Beiträge
806
Reaktionspunkte
32
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,

ich habe folgendes Problem:
Ich habe eine ZULI in Excel im .dif Format erstellt.

Nun wird die Anlage um einige Stationen und E/A`s erweitert.

Da sich die Funktionen nicht ändern und auch die Reihenfolge der E/A`s identisch ist, es kommen noch linien hinzu, wollte ich das mit einfügen ersetzen machen.

Leider nörgelt mein Excel immer Rum Fehler in Formel. Ich habe die Zelle aber als Text formatiert. Das Problem wird sein das mein BMK so aussieht

=PO1+ET30-100B3 bedeutet das es sich in ET mit Adresse 30 um den Eingang 100.3 handelt.

Nun habe ich die ET40 die dann z.B. den 200B3 hat. Nun will ich den Block kopieren und dann durch +ET40-200B3 ersetzen.
Nur klappt das nicht.

Weiß jemand Rat??
Nutze Excel 2003 könnte aber auch open office verwenden.

Bin für jeden Tip dankbar. Spart jede Menge Arbeit ;-)

Wäre Außerdem nicht schlecht wenn Excel ab Bit 7 mit einem neuen Byte anfangen würde. Geht das??
 
Wäre Außerdem nicht schlecht wenn Excel ab Bit 7 mit einem neuen Byte anfangen würde. Geht das??
Evtl. mal in oktal wandeln:
DEZINOKT()
Da müssen aber die Analysefunktionen auf dem Rechner installiert sein, klappt also spätestens auf dem nächsten Rechner nicht mehr ohne weiteres.

Ich arbeite bei derartigen Problemen gerne mit den Formeln ("Ersetzen" bzw. "Verketten"). Wenn die Inhalte dann wie gewünscht dastehen "Kopieren", "Inhalte Einfügen", "Werte"

Um eine Text eindeutig als solchen zu Markieren kann ein "'" vorgesetzt werden (Shift und #). Bleibt dann im Excel unsichtbar und sollte dann auch beim Kopieren kein Problem bereiten
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

falls du mir traust :cool:

Im Anhang ist ein Excel Macro mit ner Userform, das Byte-Bitadressierung in Excel macht.
Die Anzahl der Bytes, sowie die Startzelle werden über die Userform vorgegeben.

Micha
 

Anhänge

  • Adressierung_Byte_Bit.zip
    1,9 KB · Aufrufe: 106
Hallo,

ich bin auf 20 - Zeilen VBA-Code gekommen (von den Kommentaren mal abgesehen) ;-)



Code:
Function NextBit(z As String) As String        'Naechstes Bit ermitteln ggf. Byteadresse hochzählen

Dim Typ As String
Dim ByteAdr As String
Dim BitAdr As String
Dim Punkt As Integer
Dim Laenge As Integer
Dim Bytelaenge As Integer


'Typ ermitteln (E,A,M, etc.)
Typ = Left(z, 1)

'Laenge des Eingabestrings ermitteln
Laenge = Len(z)

'ermitteln welche Stelle im Eingabestring der "." belegt
Punkt = InStr(1, z, ".", 1)

'Bitadresse herausziehen
BitAdr = Right(z, Laenge - Punkt)

'Byteadresse herausziehen (Gesammte Länge - 2 - Bitlänge --> Bytelänge)
Bytelaenge = Laenge - 2 - (Laenge - Punkt)
ByteAdr = Mid(z, 2, Bytelaenge)

'Check Bit-Adresse
If BitAdr = 7 Then
    ByteAdr = ByteAdr + 1
    BitAdr = 0
Else
    BitAdr = BitAdr + 1
End If

'Ausgabe neue Adresse
NextBit = Typ & ByteAdr & "." & BitAdr


End Function
 
Zurück
Oben